Шпаргалка по использованию утилиты tar:

Основные команды

Создание архива
tar -cvf archive_name.tar file1 file2 dir1
  • -c — создать новый архив.
  • -v — выводить список файлов в процессе (опционально).
  • -f — указать имя архива.
Распаковка архива
tar -xvf archive_name.tar
  • -x — извлечь файлы из архива.
  • -v — выводить список файлов в процессе (опционально).
  • -f — указать имя архива.
Просмотр содержимого архива
tar -tvf archive_name.tar
  • -t — показать содержимое архива.
Добавление файлов в существующий архив
tar -rvf archive_name.tar new_file
  • -r — добавить файлы в конец архива.

Создание архива с сжатием (gzip)

tar -czvf archive_name.tar.gz file1 file2 dir1
  • -z — сжать архив с помощью gzip.
Распаковка архива с сжатием (gzip)
tar -xzvf archive_name.tar.gz
  • -z — распаковать архив, сжатый gzip.
Создание архива с сжатием (bzip2)
tar -cjvf archive_name.tar.bz2 file1 file2 dir1
  • -j — сжать архив с помощью bzip2.
Распаковка архива с сжатием (bzip2)
tar -xjvf archive_name.tar.bz2
  • -j — распаковать архив, сжатый bzip2.
Создание архива с сжатием (xz)
tar -cJvf archive_name.tar.xz file1 file2 dir1
  • -J — сжать архив с помощью xz.
Распаковка архива с сжатием (xz)
tar -xJvf archive_name.tar.xz
  • -J — распаковать архив, сжатый xz.

Полезные опции

  • --exclude=pattern — исключить файлы, соответствующие шаблону.
  • -C directory — изменить директорию перед выполнением операции.
  • --strip-components=N — удалить N ведущих компонентов из путей файлов при распаковке.

Примеры

Создать архив с исключением определенных файлов
tar -cvf archive_name.tar --exclude='*.log' dir1
Распаковать архив в определенную директорию
tar -xvf archive_name.tar -C /path/to/directory
Создать архив с сжатием gzip и исключением файлов
tar -czvf archive_name.tar.gz --exclude='*.tmp' dir1
Распаковать архив с удалением первой директории из путей
tar -xvf archive_name.tar --strip-components=1