7z Command Tutorial With Examples To Compress And Extract Files In Linux


7zip is a popular tool and compression format. 7zip supports a wide range of platforms and operations systems like Windows, Linux, BSD, macOS, etc.

Syntax

We will use following syntax for 7z command.

7z <command> [<switches>...] <archive_name> [<file_names>...]

Help

First before starting using the 7z command we can get usage and help information by using -h option. We can see that different options like adding file to archive, benchmark, delete files from archive etc. listed with the -h option output.

$ 7z -h
Help
7z Command Line Help Information with -h Option

Alternatively, we can list usage and help information without providing any option to the 7z command like below.

$ 7z
7z Command Line Help Information

7z Commands

While using 7z there is two-component as we can see in the syntax. One of them is commands. Commands are used to specify the operations like:

  •  a : Add files to archive
  •  b : Benchmark
  •  d : Delete files from archive
  •  e : Extract files from archive (without using directory names)
  •  h : Calculate hash values for files
  •  i : Show information about supported formats
  •  l : List contents of archive
  •  rn : Rename files in archive
  •  t : Test integrity of archive
  •  u : Update files to archive
  •  x : eXtract files with full paths

Switches

Switches are used to specify some minor options like create SFX archive, compress shared files, set output log level. Here are some of them

  •   -- : Stop switches parsing
  •  -ai[r[-|0]]{@listfile|!wildcard} : Include archives
  •  -ax[r[-|0]]{@listfile|!wildcard} : eXclude archives
  •  –ao{a|s|t|u} : set Overwrite mode
  •  -an : disable archive_name field

Compress Files and Folders

7z can compress files and folders. We will use a command to create a new archive. The new archive file name will be mybackup.7z and we will put files named a.out , body.txt and folder cups . Here the

$ 7z a mybackups.7z a.out body.txt cups
Compress Files and Folders
Compress Files and Folders

Here while starting 7z applications show some information about the 7z application like build number, version, developer. And then provided files and folders are scanned and the scan result is printed like 56 folders, 1550 files, and a total 142 MB. After compression is completed new archive size is printed as 96 MB.

Add Files To The Archive

In previous example we have created the archive file. Some time we need to add new files to the existing archive file. In this situations we will use same a option to add files.

$ 7z a mybackups.7z fruits.txt
Add Files To The Archive
Add Files To The Archive

In this operation mybackup.7z archive file already exists. Some information about the file is printed like path, compression type, size, etc. Then a new file is added to the existing archive or compressed file named mybackup.7z .

LEARN MORE  Gzip Command Tutorial For Linux

Delete Files From Archive

Another useful operation is removing one or more files from an existing archive file. We will use d command with the file we want to delete. In this example, we want to remove the file named fruits.txt from the archive file mybackups.7z .

$ 7z d mybackups.7z fruits.txt
Delete Files From Archive
Delete Files From Archive

Extract Files From The Archive/Compressed File

We can extract all files from an archive or compressed file by using x command or option. We will also provide the archive or compressed file. In this example, we will extract the mybackups.7z .

$ 7z x mybackups.7z
Extract Files
Extract Files

As we can see from the screenshot there are some existing files which will be overwritten. There question whether we want to overwrite, skip, rename, etc. We answer this as Always. After extraction, some statistical information like total folder count, file count size, compressed size is printed.

List Contents of Archive

We can also list files of an archive with l command. We will list all files of mybackup.7z archive.

$ 7z l mybackups.7z
List Contents of Archive
List Contents of Archive

In the output, we can see that files and folders are listed. While listing information like date, time, attributes, size, and name are provided.

1 thought on “7z Command Tutorial With Examples To Compress And Extract Files In Linux”

Leave a Comment