Combine many files and directories into a single t-archive file.
tar cf "$ARCHIVE".tar $DIR
You can remember this with the mnemonic ‘Create File’.
Unfortunately, this stores the full file path, so making a tar archive of
/etc/nginx/ will store
etc/nginx (without the leading
It’s often better to tell tar which path to start from using the
tar cf "$ARCHIVE".tar -C /etc/ nginx
Check the contents of your archive with:
tar tf "$ARCHIVE".tar
If you want to store ’everything in a directory’, then using
* will not work, because it will target everything in the current directory.
Instead, you can store the target in a variable:
files=$(ls /etc/nginx) tar cf "$ARCHIVE".tar -C /etc/nginx/ $file
Extract the tar archive with
tar xf “$ARCHIVE”.tar
You can remember this with the mnemonic ’eXtract File'.
Create a zip-compressed archive with the
tar czf "$ARCHIVE".tgz -C /etc/nginx/ $file
You can use any file ending you want, but sane people like to use ‘.tgz’ or ‘.tar.tgz’.
(also called ‘p7zip’ or ‘7z’)
7za a -tzip -p$PASSWORD -mem=AES256 $ARCHIVE.zip $FILE_1 $FILE_2
Note that people can still see every filename in your archive, and can change those files. They just can’t read the contents.
7za x archive.zip
7zip will open anything: zip-files, rar-files, a tin of beans, anything. However, the extracted tgz files will just be tar files, so you will still need to use tar to extract them (see above).