PCsuggest

  • Quick tip
  • SECURITY
  • NETWORKING
  • OpenWrt
  • HARDWARE

Linux zip command examples - create and password protect ZIP files

Updated - August 25, 2017 by Arnab Satapathi

Zip is one of the most used archiving utility, used on Android, Windows, Linux, macOS even on servers. So, here some useful linux zip command examples to create and password protect your zip files.

linux zip command example

Well, command line is not the most efficient way to create zip archives, a graphical archive manager is much easier to use. However purpose of this tutorial is how to use command line to do that, and it's clearly for beginners.

Contents

  • Install linux zip and unzip command line tools
    • Create linux zip file with command line
    • Linux zip folder with command line
    • Linux zip command to recursively compress files and folders
    • Linux zip with password
    • Linux zip exclude files and folders
  • Conclusion

Install linux zip and unzip command line tools

Many Linux distros don't have zip and unzip command installed by default, so you need to install them first.

If you're on Ubuntu or Debian, use apt to install them.

sudo apt-get install zip unzip

If you're on ArchLinux or Arch based based distro, install it with pacman.

sudo pacman -S zip unzip

Zip and unzip are part of standard Fedora install, so you don't need to install it on Fedora.

The 3 most useful option to use along with the zip command are -r , -9 and -e.

  1. The -r option is for recursively adding files and folders to the ZIP archive.
  2. When the -9 option is used, zip tries maximum compression on everything.
  3. The -e option is to create basic password protected ZIP files.

Create linux zip file with command line

Typical syntax to create a zip file is like this, zip output_file.zip input_file

Explanation, here input_file is the file we want to compress, and output_file.zip is our zip archive output.

amazon prime logo
Try AmazonPrime for free
Enjoy free shipping and One-Day delivery, cancel any time.

Now we'll learn how to zip and single and multiple files with the linux zip command.

A practical example for a single file could be like below, assume you want to compress the file db_backup_wp2.sql with zip.

zip database_backup.zip db_backup_wp2.sql

linux zip file example

If you want to compress multiple files with zip command at once, it's like the example command below.

zip backup.zip border.png db_backup_wp2.sql my_resume.pdf pp.jpg

linux zip multiple files

Well, the files used in the above example are pretty random, and backup.zip is our archive.

If you need to create the ZIP archive somewhere else, I mean not in the current director(pwd), just append the proper path before the archive name.

zip -9r /root/log_backup/logs_25082017.zip /var/log/

Linux zip folder with command line

Here we'll learn how to add single or multiple folders to a zip archive, not much different from files anyway.

As example, in linux you can zip folder with command line like below.

zip -r folder1.zip folder1/

Of course you've to use the -r flag with zip command to recursively compress files.

Now, if you want to add multiple directories to that zip archive, this should be like below.

zip -r folder_backup.zip folder1/ folder2/ folder3/

linux zip folder recursively

Ignore the trailing slashes after the folder1 or folder2 and so on, they're added automatically due to bash shell tab auto complete.

Linux zip command to recursively compress files and folders

What if you want to zip several files and folders at the same time in a single archive at the same time?

It's same as before, you just need to add the name of files and folder one by one. A practical example could be like below.

zip -9r my_archive.zip folder1/ folder2/ border.png pp.jpg my_resume.pdf

linux zip file folder recursively

Linux zip with password

If you want to encrypt your zip files with password, it could be done by using -e option with linux zip command.

zip -e -9r my_encrypted_archive.zip file1 file2 folder1 folder2

The above command will prompt you to enter a password and verify it.

However it's not the best  way to encrypt files, you should use 7zip to password protect your archives.

Linux zip exclude files and folders

You can use the -x flag with zip command to exclude specific files or folders.

zip -9r my_archive.zip * -x *.zip

As example, the above command will compress everything to my_archive.zip in that directory while excluding all .zip files present there.

You can also exclude specific files or sub-folders inside folders, example below.

zip -9r my_archive2.zip -x folder2/widget_bg.png

Here we want to exclude the widget_bg.png file under the folder2 directory.

Conclusion

So. that's all about how to create and password protect ZIP archives in Linux. You may also want to extract, create or edit 7zip archives, here's linux 7zip command examples.

If you've any further question or suggestion, please ask it through the comments.

Filed Under: how to, linux basics Tagged With: 7zip, command line, zip command

Your comments
  1. bioman says

    March 2, 2020

    hi, i would like to backup entire linux system with this function. The problem is : zip would like to compress links as a loop, how to filter the links folders in the system ?
    thx

    Reply
    • Arnab Satapathi says

      March 3, 2020

      For that, mksquashfs command is much better, properly preserves file permission and ownership.

      https://wiki.archlinux.org/index.php/Full_system_backup_with_SquashFS

      Reply

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Copyright © PCsuggest.com · All rights reserved.

  • Home
  • About
  • Contact
  • Privacy Policy
  • Sitemap