Для распаковки tar-архивов через командную строку используется утилита tar. Полезно знать, что архивы в формате tar имеют расширение файлов .tar. Также в Linux распространены архивы, которые имеют дополнительное сжатие. Например, архивы .tar.bz2, .tar.gz и другие. Все эти архивы можно распаковать утилитой tar.
Распаковка tar
Начнем с синтаксиса – он довольно прост. Если вы когда-либо работали в консольном окне, то вопросов возникнуть не должно. Создание нового архива выполняется следующей строчкой кода:
tar <функции> archive.tar <архивируемые файлы>
Распаковка файлов тоже выполняется просто:
tar <функции> <имя архива>
Основные опции:
- -A, —concatenate – позволяет добавить уже существующий архив к другому;
- -c, —create – создает новый архив и записывает в него файлы;
- -d – расшифровывается как -diff или -delete, где первая команда проверяет различия между архивами, вторая – удаляет данных из архива;
- -r, append – добавляет новые файлы в конец заархивированного документа;
- -t, —list – разрешает посмотреть содержимое архива, формат аналогичен ls –l; если файлы не указаны, то выводит информацию обо всех файлах;
- -u, —update – обновление файлов в созданном архиве с тем же наименованием;
- -x, —extract – распаковывает файлы из заархивированного документа.
Мы также можем использовать особые параметры, относящиеся к каждой опции:
- -c dir, —directory=DIR – перед тем как выполнить операцию, директория будет изменена на dir;
- -f file, —file – выводит результат в file;
- -p, —bzip2 – сохраняет все права доступа;
- -v – расшифровывается как -verbose или -totals: выводит всю информацию о текущем процессе и показывает сведения об уже завершенном процессе.
Как мы говорили ранее, tar также хорошо взаимодействует с утилитами сжатия. Для их использования предназначены отдельные опции:
- -a, -auto-compress – выбирает программу для сжатия данных;
- -I, -use-compress-program=PROG – позволяет фильтровать архив с помощью утилиты PROG, для которой требуется использование опции -d;
- -j, -bzip2 – сжимает архив с помощью программы bzip2;
- -J, -xz – сжимает архив с помощью программы XZ;
- -Izip – сжимает архив с помощью программы Lzip;
- -Izma – сжимает архив с помощью программы Izma;
- -z, -gzip, -gunzip, -ungzip – сжимает архив с помощью программы GZIP;
- -Z, -compress, -uncompress – использование компрессии.
У команды tar есть еще много возможностей – чтобы их посмотреть, достаточно в консольном окне ввести команду tar —help. О том, как воспользоваться наиболее важными опциями и поработать с архивацией данных, мы поговорим в следующем разделе.
Для распаковки архива в формате .tar в текущую директорию выполните команду:
tar -xvf archive.tar
Распаковка tar.bz2, tar.bzip2, tbz2, tb2, tbz
tar -xvjf archive.tar.bz2
Распаковка tar.xz, txz
tar -xvJf archive.tar.xz
Распаковка tar.gz, tgz
tar -xvzf archive.tar.gz
Распаковка tar.lzma
tar —lzma -xvf archive.tar.lzma
Пояснение опций
x — распаковать архив.
v — Verbose-режим (вывод на экран дополнительной информации во время распаковки).
f — выполнить распаковку архива из файла.
j — вызвать bzip2 для распаковки архива.
z — вызвать gzip
J — вызвать xz
Команда для создания tar-архива с использованием сжатия
Как мы уже выяснили, сжатие архива делается как минимум двумя различными способами. Разберем каждый из них:
- Gzip-сжатие:
tar -cvzf new-archive.tar.gz my_dir |
-cf 一 параметр, отвечающий за создание архива.
-v 一 параметр, который выводит результаты создания нового архива с перечислением файлов/папок.
-z 一 параметр, указывающий на способ сжатия Gzip.
new-archive.tar.gz 一 название нового архива.
my_dir 一 папка, которая будет помещена в новый архив.
- Bzip2-сжатие:
ar -cvjf new-archive.tar.bz2 my_dir |
-cf и -v означают те же параметры, что и в случае с Gzip.
-j 一 параметр, указывающий на способ сжатия Bzip2.
Синтаксис команды: tar [-параметр] [название архива.указание способа сжатия] [путь/что запаковать].
Чтобы распаковать архив в определенную директорию используется опция -C или —directory, например:
tar -xvf archive.tar -C /to/directory