Утилита Tar
Tar – это стандартная утилита, с помощью которой выполняется архивирование файлов ОС. Постепенно из небольшой программы архивации она превратилась в мощный инструмент, поддерживающий работу со многими вариантами архивов и алгоритмами сжатия. Программа поддерживает большое количество параметров.
Общий вид команды:
$ tar опции файл_для_записи /папка_файлами_для_архива
Основные опции:
A– добавить файл к архиву;c– создать архив;d– сравнить файлы архива и распакованные файлы в ФС;j– сжать архив с помощьюBzip;z– сжать архив с помощьюGzip;r– добавить файлы в конец архива;t– показать содержимое архива;u– обновить архив относительно ФС;x– извлечь файлы из архива;v– показать подробную информацию о процессе работы;f– файл для записи архива;-C– распаковать в указанную папку;--strip-components– отбросить n вложенных папок.
Чтобы создать архив, используют такую команду:
tar -cvf archive.tar.gz /PATH/to/files
Чтобы распаковать архив tar:
tar -xvf archive.tar.gz
Сжатый архив создается точно так же, только с опцией -z, с шифрованием gizp; если нужно bzip, то применяется опция -j:
tar -zcvf archive.tar.gz /PATH/to/files
$ tar -zxvf archive.tar.gz
Например, чтобы заархивировать папку в ОС:
tar -zcvf home.tar.gz ~/
По-другому тот же архив можно получить, если сначала создать обычный архив с помощью tar, а потом сжать его утилитой для сжатия, при этом остается больше контроля над процессом сжатия:
Gzip archive.tar
Также можно убрать сжатие:
gunzip archive.tar.gz
Чтобы добавить файл в архив, используют:
tar -rvf archive.tar file.txt
Для извлечения одного файла синтаксис тот же:
tar -xvf archive.tar file.txt
Можно извлечь несколько файлов по шаблону соответствия с помощью параметра wildcard, например, извлечь все php-файлы:
tar -xvf archive.tar --wildcards '*.php'
По умолчанию распаковать архив tar можно в текущую папку с именем архива, а чтобы распаковать в нужную папку используют ключ -C:
tar -xvf archive.tar -C /PATH/to/dir
Далее рассматриваются альтернативы утилиты tar.