tar

архіватор

Створити архів з вмісту каталогу / розархівувати tgz-архів:

tar -czf content.tgz ./content_dir
tar -xzf content.tgz

Щоб передати список файлів для архівування через файл, ви можете скористатися опцією -T та вказати ім'я файлу, в якому перераховані шляхи до файлів, які потрібно архівувати.

Ось приклад:

  1. Створіть текстовий файл (наприклад, filelist.txt) і додайте в нього шляхи до файлів, які ви хочете включити в архів. Наприклад:

    /шлях/до/файлу1
    /шлях/до/файлу2
    /шлях/до/файлу3
  2. Використайте команду tar з опцією -T для зчитування списку файлів з файлу та створення архіву. Наприклад:

    tar -czvf arch.tgz -T filelist.txt

    У цьому прикладі:

    • -c: створити новий архів,

    • -z: використати gzip для стиснення,

    • -v: вивести подробиці про виконання,

    • -f arch.tgz: вказати ім'я архіву,

    • -T filelist.txt: вказати файл, в якому перераховані файли для архівування.

Таким чином, всі файли, вказані в filelist.txt, будуть включені в архів архів.tar.gz.

Linux tar — это архив, который используется большим количеством системных администраторов Linux/Unix при работе с накопителями для резервного копирования. Команды tar используются для копирования файлов и каталогов в файл сжатого архива, обычно называемый tarball или tar, gzip и bzip. Tar является наиболее широко используемой командой для создания сжатых архивных файлов. Этот архив можно легко перемещаться с одного диска на другой диск или машину.

В этой статье мы рассмотрим и обсудим различные примеры команд tar, включая создание архивных файлов с использованием (tar, tar.gz и tar.bz2) сжатия, извлечение архивного файла, просмотр содержимого файла , проверки файла, добавления файла или каталога в архив, оценка размера файла/архива tar и т. д.

Основная цель этого руководства — предоставить различные примеры tar, которые могут быть полезны для вас, чтобы вы могли понять и стать экспертом в работе с архивами tar.

1. Создание файла архива tar

В приведенном ниже примере команда создаст файл sedicomm-15-12-20.tar с каталога /home/sedicomm в текущем рабочем каталоге.

1# tar cvf sedicomm-15-12-20.tar /home/sedicomm/2/home/sedicomm/3/home/sedicomm/44/home/sedicomm/35/home/sedicomm/26/home/sedicomm/1

Давайте обсудим каждый флаг (опцию), который мы использовали в приведенной выше команде для создания файла архива tar.

  • c — Создает новый .tar файл архива.

  • v — показать прогресс создания файла .tar.

  • f — тип имени файла архива.

2. Создание файла архива tar.gz

Чтобы создать сжатый файл архива gzip, мы используем параметр z. Например, приведенная ниже команда создаст сжатый файл Documents-15-12-20.tar.gz для каталога /home/yurii/Documents.

Примечание: расширения tar.gz и tgz еквивалентны.

1# tar cvzf Documents-15-12-20.tar.gz /home/yurii/Documents2ИЛИ3# tar cvzf Documents-15-12-20.tgz /home/yurii/Documents

3. Создание файла архива tar.bz2

Функция bz2 сжимает и создает файл архива меньшего размера, чем gzip. Сжатие bz2 требует больше времени для сжатия и распаковки файлов по сравнению с gzip. Чтобы создать сжатый файл tar, мы используем параметр –j. Следующая команда примера создаст файл Documents.tar.bz2 для каталога /home/yurii/Documents.

Примечание: tar.bz2 и tbz аналогичны tb2.

1# tar cvfj Documents.tar.bz2 /home/yurii/Documents2ИЛИ3# tar cvfj Documents.tar.tbz /home/yurii/Documents4ИЛИ5# tar cvfj Documents.tar.tb2 /home/yurii/Documents

4. Разархивирование архива tar

Чтобы распаковать или извлечь файл tar, просто выполните следующую команду, используя опцию x (extract). Например, приведенная ниже команда распакует файл public_html-15-12-20.tar в текущий рабочий каталог. Если вы хотите разархивировать файлы в другой каталог, используйте опцию –C (specified directory).

1tar xvf Documents.tar2ИЛИ3tar xvf Documents.tar -C /home/yurii/Documents/UnArch

5. Разархивирование tar.bz2

Чтобы распаковать tar.bz2 архив, просто запустите следующую команду. Если же вы хотите разархивировать в другой каталог, используйте опцию -C и путь к каталогу, как показано в приведенном выше примере (папка должна уже существовать).

1tar xvf Documents.tar.bz22ИЛИ3tar xvf Documents.tar.bz2 -C /home/yurii/Documents/UnArch

tar

6. Разархивирование архива tar.gz

Чтобы разархивировать сжатый файл tar.gz, просто используйте ту же команду что для tar.bz2 команду.

1tar xvf Documents.tar.bz2

tar

7. Просмотр содержимого файла архива tar

Чтобы просмотреть содержимое файла tar, просто запустите его с опцией t (просмотр содержимого). В приведенной ниже команде будет отображаться содержимое файла Documents.tar.bz2.

1# tar tvf Documents.tar.bz2

tar

8. Просмотр содержимого tar.gz

Используйте ту же команду для отображения содержимого файла tar.gz.

tar

9. Просмотр содержимого tar.bz2

Используйте ту же команду для отображения содержимого файла tar.bz2.

tar

10. Разархивирование отдельного файла из tar

К примеру, чтобы извлечь один файл с именем File1 из Documents.tar, используйте следующую команду.

1# tar xvf Documents.tar home/yurii/Documents/Folder1/File12ИЛИ3# tar --extract --file=Documents.tar home/yurii/Documents/Folder1/File1

11. Разархивирование отдельного из файла tar.gz

Чтобы извлечь один файл с именем File1 из Documents.tar.gz, используйте следующую команду.

1# ztar xvf Documents.tar.gz home/yurii/Documents/Folder1/File1

12. Разархивирование отдельного файл из файла tar.bz2

Чтобы извлечь один файл с именем File1 из Documents.tar.bz2, используйте следующую команду.

1# jtar zxvf Documents.tar.bz2 home/yurii/Documents/Folder1/File1

13. Разархивирование нескольких файлов из tar, tar.gz и tar.bz2

Чтобы извлечь несколько файлов из архива tar, tar.gz и tar.bz2 необходимо использовать приведенную ниже команду. Эта команда извлекает из архива “file 1” и “file 2”.

1# tar xvf sedicomm.tar "file 1" "file 2"2# tar zxvf sedicomm.tar.gz "file 1" "file 2"3# tar jxvf sedicomm.tar.bz2 "file 1" "file 2"

14. Извлечение группы файлов с помощью метасимволов

Чтобы извлечь группу файлов, мы используем метасимволы. Например, чтобы извлечь группу файлов с расширением .txt из архива tar, tar.gz и tar.bz2 необходимо использовать следующую команду:

1# tar xvf sedicomm.tar --wildcards '*.txt'2# tar zxvf sedicomm.tar.gz --wildcards '*.txt'3# tar jxvf sedicomm.tar.bz2 --wildcards '*.txt'

15. Добавление файла или директории в файл архива tar

Чтобы добавить файлы или каталоги в существующий файл архива tar, мы используем параметр r (присоединить). Например, мы добавляем файл File.txt и каталог Folder в существующий архив sedicomm.tar.

1# tar rvf sedicomm.tar File.txt2# tar rvf sedicomm.tar Folder

16. Добавление файлов или каталогов в tar.gz и tar.bz2.

У tar нет возможности добавлять файлы или каталоги в существующий сжатый файл tar.gz и tar.bz2. Если мы попытаемся, то получим следующую ошибку:

1tar: This does not look like a tar archive2tar: Skipping to next header3tar: Error exit delayed from previous errors

17. Проверка размера tar, tar.gz и tar.bz2.

Чтобы проверить размер архива tar, tar.gz и tar.bz2, используйте следующую команду. Например, приведенная ниже команда отобразит размер архивного файла в Килобайтах.

1# tar czf - Documents.tar | wc -c2355

Использование опций:

  • -c — создать файл архива.

  • -x — извлечение архивного файла.

  • -v — показывает ход создания архивного файла.

  • -f — имя архивного файла.

  • -t — просмотр содержимого архивного файла.

  • -j — сжимать архив через bzip2.

  • -z — сжимать архив через gzip.

  • -r — добавлять или обновлять файлы или каталоги в существующий файл архива.

  • -W — проверка архивного файла.

  • -wildcards — задание шаблона команде unix tar.

18. Помощь

Вот и все, надеюсь, что приведенные выше примеры команд tar будут полезны для вас, для получения дополнительной информации используйте tar –help.

Last updated