Tar — это стандартная программа для работы с архивами в Linux и Unix системах. Утилита Tar при создании архивов, так же записывает в него информацию о правах, структуре и временные метки файлов. Программа Tar следует философии Unix (Делать одну вещь, но делать ее хорошо), поэтому она не сжимает архив. Для сжатия используются внешние утилиты bzip2 (расширение — bz2) и gzip (расширение — gz).
Синтаксис программы Tar
Для архивации:
tar [-опции] <имя файла tar> [файлы, которые нужно поместить в архив]
Для распаковки:
tar [-опции] <имя файла tar>
Опции команды Tar:
Функция | Длинный формат | Описание |
---|---|---|
-c | (- -create) | Создать новый архив |
-x | (- -extract) | Извлечь файлы из архива |
-v | (- -verbose) | Выводит подробную информацию процесса |
(- -totals) | Выводит итоговую информацию завершенного процесса | |
-j | (- -bzip2) | Перенаправить вывод в команду bzip2 |
-z | (- -gzip) | Перенаправить вывод в команду gzip |
-f | (- -file) | Указать имя архива. |
-p | (- -same-permissions) | Сохранить все права доступа к файлу |
-d | (- -diff) (- -delete) | Проверить различие между архивами Удалить из существующего архива файл |
-r | (- -append) | Присоединить файлы к концу архива |
-t | (- -list) | Сформировать список содержимого архива |
-u | (- -update) | Обновить архив более новыми файлами с тем же именем |
-A | (- -concatenate) | Присоединить существующий архив к другому |
-C /home/user | (- -directory=/home/user) | Распаковка в альтернативное место /home/user |
Как пользоваться Tar
Создание архива с помощью Tar
У нас есть 5 файлов: test1.txt, test2.txt, test3.txt, test4.txt, test5.txt
Создадим архив с этими файлами без сжатия:
tar -cvf archive.tar test1.txt test2.txt test3.txt test4.txt test5.txt
Создание архива папки folder1 с сжатием bz2:
tar -cjvf archive.tar.bz2 folder1
Создание архива с сжатием gz:
tar -czvf archive.tar.gz test1.txt test2.txt test3.txt test4.txt test5.txt
Распаковка архива с помощью Tar
Чтобы распаковать tar архив в текущую директорию, нужно выполнить команду (archive название архива. в вашем случае укажите название своего архива):
tar -xvf archive.tar
Распаковка tar в директорию. Например в директорию /home/testdir:
tar -xvf archive.tar -C /home/testdir
Распаковка tar.bz2 :
tar xvjf archive.tar.bz2
Распаковка tar.gz:
tar xvzf archive.tar.gz
Как посмотреть, что в внутри архива?
tar -tf archive.tar.gz