7-Zip
March 6th, 2016
p7zip-full
7z and 7za file archivers with high compression ratio
p7zip
7zr file archiver with high compression ratio
p7zip-plugins
Additional plugins for p7zip
NAME
7z - A file archiver with high compression ratio format
SYNOPSIS
7z <command> [<switches>... ] <archive_name> [<file_names>... ] [<@listfiles>... ]
DESCRIPTION
7-Zip is a file archiver supporting 7z (that implements LZMA compression algorithm featuring very high compression ratio), LZMA2, XZ, ZIP, Zip64, CAB, RAR (if the non-free p7zip-rar package is installed), 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, so it might be slightly slower than 7za(1) but can handle more archive formats.
COMMANDS
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
-- | 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 |
-bb[0-3] | |
Set output log level | |
-bd | Disable progress indicator |
-bs{o|e|p}{0|1|2} | |
Set output stream for output/error/progress line | |
-bt | Show execution time statistics |
-i[r[-|0]]{@listfile|!wildcard} | |
Include filenames | |
-m{Parameters} | |
Set Compression Method (see /usr/share/doc/p7zip/DOC/MANUAL/cmdline/switches/method.htm from the p7zip-full package for a list of methods) | |
-o{Directory} | |
Set Output directory | |
-p{Password} | |
Set Password (NOTE: this flag does not work with 7zr) | |
-r[-|0] | Recurse subdirectories (CAUTION: this flag does not do what you think, avoid using it) |
-sa{a|e|s} | |
Set archive name mode | |
-scc{UTF-8|WIN|DOS} | |
Set charset for for console input/output | |
-scs{UTF-8|UTF-16LE|UTF-16BE|WIN|DOS|{id}} | |
Set charset for list files | |
-scrc[CRC32|CRC64|SHA1|SHA256|*] | |
Set hash function for x, e, h commands | |
-sdel | Delete files after compression |
-seml[.] | Send archive by email |
-sfx[{name}] | |
Create SFX archive | |
-si[{name}] | |
Read data from stdin (e.g. tar cf - directory | 7z a -si directory.tar.7z) | |
-slp | Set Large Pages mode |
-slt | Show technical information for l (List) command |
-snh | Store hard links as links |
-snl | Store symbolic links as links |
-sni | Store NT security information |
-sns[-] | Store NTFS alternate streams |
-sfx[{name}] | |
Create SFX archive | |
-so | Write data to stdout (e.g. 7z x -so directory.tar.7z | tar xf -) |
-spd | Disable wildcard matching for file names |
-spe | Eliminate duplication of root folder for extract command |
-spf | Use fully qualified file paths |
-ssc[-] | Set sensitive case mode |
-ssw | Compress shared files |
-stl | Set archive timestamp from the most recently modified file |
-stm{HexMask} | |
Set CPU thread affinity mask (hexadecimal number) | |
-stx{Type} | |
Exclude archive type | |
-t{Type} | Set type of archive |
-u[-][p#][q#][r#][x#][y#][z#][!newArchiveName] | |
Update options | |
-v{Size}[b|k|m|g] | |
Create volumes | |
-w[path] | Set working directory. Empty path means a temporary 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.
- 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 | 7z a -si directory.tar.7z
- to restore your backup : 7z x -so directory.tar.7z | tar xf -
- to backup a directory : tar cf - directory | 7z a -si directory.tar.7z
- to restore your backup : 7z 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 : 7z 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) |
HTML Documentation
/usr/share/doc/p7zip-full/DOC/MANUAL/start.htm
AUTHOR
Written for Debian by Mohammed Adnene Trojette. Updated by Robert Luberda. | |