How to Compress Files Using zip Command

How to Compress Files Using zip Command in Linux

Hey there, welcome to this beginner-friendly tutorial on how to compress files using the zip command in Linux.

Let’s say you have a few files or folders, and you want to package them into a single, smaller file that’s easier to share or store. That’s where the zip command comes in!

🧰 Step 1: Install zip (if not already installed)

Most modern Linux distros come with zip pre-installed. But in case it's missing, here’s how to install it:

sudo apt update
sudo apt install zip

📁 Step 2: Create Some Files

Let’s first create a few sample files to zip. You can skip this step if you already have files to compress.

mkdir myfiles
cd myfiles
echo "Hello World" > file1.txt
echo "Linux is awesome" > file2.txt
echo "zip command tutorial" > file3.txt

📦 Step 3: Compress Files into a Zip Archive

Now let’s compress all those files into a single zip archive.

zip myarchive.zip file1.txt file2.txt file3.txt

This creates a new file called myarchive.zip which contains the three files.

  adding: file1.txt (deflated 10%)
  adding: file2.txt (deflated 20%)
  adding: file3.txt (deflated 30%)

📁 Step 4: Zip an Entire Folder

To compress a whole folder (e.g., the current folder), use the -r (recursive) option:

zip -r myfolder.zip .
  adding: file1.txt (stored 0%)
  adding: file2.txt (stored 0%)
  adding: file3.txt (stored 0%)

🔍 Step 5: View the Contents of a Zip File

Want to peek inside your zip file without extracting it?

unzip -l myarchive.zip
Archive:  myarchive.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
       12  2025-07-02 10:01   file1.txt
       20  2025-07-02 10:01   file2.txt
       25  2025-07-02 10:01   file3.txt
---------                     -------
       57                     3 files

🗃️ Step 6: Extract the Zip File

And finally, to unzip and get your files back:

unzip myarchive.zip
Archive:  myarchive.zip
  inflating: file1.txt
  inflating: file2.txt
  inflating: file3.txt

✅ Recap

  • Use zip myfile.zip files... to compress files.
  • Add -r for folders: zip -r archive.zip folder/
  • Use unzip -l to list contents.
  • Use unzip archive.zip to extract files.

That's it! You've learned how to zip and unzip files on Linux like a pro. 🐧✨

See you in the next tutorial!

Srinivas Namala, author
About the author

Srinivas Namala

Software Engineer

Srinivas focuses on backend development, databases, systems, and the technologies used to build reliable server-side applications.

View LinkedIn profile ↗