7z man page

7z — A file archiver with highest compression ratio

TL;DR

7z a {{archived.7z}} {{path/to/file}}

7z x {{archived}}

7z a -t {{zip|gzip|bzip2|tar|...}} {{archived}} {{path/to/file}}

7z i

7z l {{archived}}

Synopsis

7z [adeltux] [-] [SWITCH] <ARCHIVE_NAME> <ARGUMENTS>...

Description

7-Zip is a file archiver with the highest compression ratio. The program supports 7z (that implements LZMA compression algorithm), LZMA2, XZ, ZIP, Zip64, CAB, RAR (it was removed due to a non-free license), ARJ, GZIP, BZIP2, TAR, CPIO, RPM, ISO, most filesystem images and DEB formats. Compression ratio in the new 7z format is 30-50% better than ratio in ZIP format.

7z uses plugins to handle archives.

Function Letters

a

Add

d

Delete

e

Extract

l

List

t

Test

u

Update

x

eXtract with full paths

Switches

-ai[r[-|0]]{@listfile|!wildcard}

Include archives

-ax[r[-|0]]{@listfile|!wildcard}

eXclude archives

-bd

Disable percentage indicator

-i[r[-|0]]{@listfile|!wildcard}

Include filenames

-l

don't store symlinks; store the files/directories they point to (CAUTION : the scanning stage can never end because of recursive symlinks like 'ln -s .. ldir')

-m{Parameters}

Set Compression Method (see /usr/share/doc/p7zip/DOC/MANUAL/switches/method.htm for a list of methods)

-mhe=on|off

7z format only : enables or disables archive header encryption (Default : off)

-o{Directory}

Set Output directory

-p{Password}

Set Password

-r[-|0]

Recurse subdirectories (CAUTION: this flag does not do what you think, avoid using it)

-sfx[{name}]

Create SFX archive

-si

Read data from StdIn (eg: tar cf - directory | 7z a -si directory.tar.7z)

-so

Write data to StdOut (eg: % echo foo | 7z a dummy -tgzip -si -so > /dev/null)

-slt

Sets technical mode for l (list) command

-t{Type}

Type of archive (7z, zip, gzip, bzip2 or tar. 7z format is default)

-v{Size}[b|k|m|g]

Create volumes

-u[-][p#][q#][r#][x#][y#][z#][!newArchiveName]

Update options

-w[path]

Set Working directory

-x[r[-|0]]]{@listfile|!wildcard}

Exclude filenames

-y

Assume Yes on all queries

Diagnostics

7-Zip returns the following exit codes:

0

Normal (no errors or warnings detected)

1

Warning (Non fatal error(s)). For example, some files cannot be read during compressing. So they were not compressed

2

Fatal error

7

Bad command line parameters

8

Not enough memory for operation

255

User stopped the process with control-C (or similar)

Backup and limitations

DO NOT USE the 7-zip format for backup purpose on Linux/Unix because :
- 7-zip does not store the owner/group of the file.

On Linux/Unix, in order to backup directories you must use tar :
- to backup a directory  : tar cf - directory | 7za a -si directory.tar.7z
- to restore your backup : 7za x -so directory.tar.7z | tar xf -

If you want to send files and directories (not the owner of file) to others Unix/MacOS/Windows users, you can use the 7-zip format.

 example : 7za a directory.7z  directory

Do not use "-r" because this flag does not do what you think.

Do not use directory/* because of ".*" files (example : "directory/*" does not match "directory/.profile")

Example 1

7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on archive.7z dir1

adds all files from directory "dir1" to archive archive.7z using "ultra settings"

-t7z

7z archive

-m0=lzma

lzma method

-mx=9

level of compression = 9 (Ultra)

-mfb=64

number of fast bytes for LZMA = 64

-md=32m

dictionary size = 32 megabytes

-ms=on

solid archive = on

Example 2

7z a -sfx archive.exe dir1

add all files from directory "dir1" to SFX archive archive.exe (Remark : SFX archive MUST end with ".exe")

Example 3

7z a -mhe=on -pmy_password archive.7z a_directory

add all files from directory "a_directory" to the archive "archive.7z" (with data and header archive encryption on)

See Also

7za(1), 7zr(1), bzip2(1), gzip(1), zip(1)

HTML Documentation

/usr/share/doc/p7zip/DOC/MANUAL/index.htm

Author

Written for Debian by Mohammed Adnene Trojette.

Referenced By

7za(1), xz(1).

September 1 2006 Mohammed Adnene Trojette