Compress and Decompress Files and Directories (Linux): Unterschied zwischen den Versionen

Aus MattWiki
Keine Bearbeitungszusammenfassung
K Matt verschob die Seite Compress and Uncompress Files and Directories (Linux) nach Compress and Decompress Files and Directories (Linux), ohne dabei eine Weiterleitung anzulegen
(kein Unterschied)

Version vom 20. September 2025, 14:26 Uhr

Compress

How Compress directories

Unlike zipgzip functions as a compression algorithm only.

Because of various reasons some of which hearken back to the era of tape drives, Unix uses a program named tar to archive data, which can then be compressed with a compression program like gzipbzip27zip, etc.

In order to "zip" a directory, the correct command would be:

tar -zcvf archive.tar.gz directory/ 

This will tell tar to c (create) an archive from the files in directory (tar is recursive by default), compress it using the z (gzip) algorithm, store the output as a f (file) named archive.tar.gz, and v(verbosely) list (on /dev/stderr so it doesn't affect piped commands) all the files it adds to the archive.

The tar command offers gzip support (via the -z flag) purely for your convenience. The gzipcommand/lib is completely separate.

The command above is effectively the same as:

tar -cv directory | gzip > archive.tar.gz 

To decompress and unpack the archive into the current directory you would use:

tar -zxvf archive.tar.gz

That command is effectively the same as:

gunzip < archive.tar.gz | tar -xv

tar has many, many, MANY other options and uses as well; I heartily recommend reading through its manpage sometime.

tar -zcvf archive-name.tar.gz directory-name

Decompress

tar

tar xfv foo.tar.gz
tar -xjf foo.tar.bz2
tar -xvJf foo.tar.xy
tar -xvJf foo.tar.xz

bzip

bunzip2 foo.tar.bz2

zip

unzip foo.zip

gunzip

gunzip foo.log.1.gz           # Decompress file and delete gz file
gunzip -k foo.log.1.gz        # Decompress file and preserve gz file
gunzip -N foo.log.1.gz        # Decompress file and preserve original timestamps and delete gz file