Архивирование файлов из командной строки

Для создания архива или извлечения файлов из архива используется команда  вида tar {ключ} {файл} со следующими ключами

-с — создание нового архива

-x — извлечение файлов

-v — показывать ход выполнения

-t — выводит список файлов существующего архива

-f — используется с параметром -c для создания архива или с параметром -x для извлечения из архива. По умолчанию {файл} равен /dev/rmt0.

-z — использовать для сжатия gzip

-j — использовать для сжатия bzip2

-p — при извлечении файлов из архива сохраняет все файловые атрибуты (владельца, время изменения и т.д.)

Для создания архива нам нужно выполнить команду

tar -cvf archive_name.tar /path_to_the_file_for_archiving

archive_name.tar — имя создаваемого нами архива

path_to_ the_ file_ for_archiving — путь к файлу или папке которые мы хотим добавить в архив

Например нам нужно архивировать файл /home/user/sample.txt

tar -cvf sample.tar /home/user/sample.txt

В архив можно поместить несколько файлов или каталогов, указав их

tar -cvf sample.tar /home/user/sample1.txt /home/user/sample2.txt

Можно просмотреть содержимое архива

tar -tvf sample.tar

Извлечь содержимое архива в текущий каталог

tar -xvf sample.tar

Нужно помнить что команда tar, по умолчанию, не сжимает файлы. Для сжатия файлов с помощью gzip или  bzip2 нужно использовать соответствующие ключи —z или —j.  При этом при использовании gzip, принято давать файлу архива расширение .tgz, а при использовании bzip2.tbz. Стоит отметить что степень сжатия упаковщика bzip2 обычно гораздо выше, но для него требуется больше памяти при работе.

Например нам нужно архивировать файл /home/user/sample.txt с помощью bzip2

tar -cjvf sample.tbz /home/user/sample.txt

Извлечь содержимое такого архива можно

tar -xjvf sample.tbz