Аббревиатура tar предназначена для иллюстрации того, что отдельные файлы GZIP были сжаты настолько широко и максимально плотно, насколько это возможно. Упакованный файл может заканчиваться на .tar.gz и .tar.bz2. Иногда используется двойное окончание – .tar.gz. ZIP, который был разработан для слияния и сжатия, но оказался более мощным и поэтому в значительной степени подавляет файл .tar.
Как можно догадаться по двойному расширению формата, состоящему из двух файлов, это фактически два в одном. TAR объединяет несколько объектов данных в один пакет под систему Windows. Это полезно, если, например, необходимо отправить несколько документов, изображений или предложить их для загрузки.
Расширения в формате .tar в основном предназначены для операционной системы Linux. В мире Windows они довольно необычны и редко встречаются. По этой причине система не может открыть эти файлы без дополнительного программного обеспечения.
Оглавление
Синтаксис командной строки
Прежде чем перейти к использованию команды tar, давайте начнем с рассмотрения базового синтаксиса.
tar [OPERATION_AND_OPTIONS] [ARCHIVE_NAME] [FILE_NAME(s)]
- OPERATION– Разрешается и требуется только один аргумент. Наиболее часто используемые операции:
- –create( -c) – Создание нового tar-архива.
- –extract( -x) – Извлечь весь архив или один или несколько файлов из архива.
- –list( -t) – отобразить список файлов, включенных в архив
- OPTIONS – Наиболее часто используемые операции:
- –verbose( -v) – Показать файлы, обрабатываемые командой tar.
- –file=archive=name( -f archive-name) – Указывает имя файла архива.
- ARCHIVE_NAME – Название архива.
- FILE_NAME(s)– список имен файлов, разделенных пробелами, которые нужно извлечь. Если не предусмотрено, весь архив будет извлечен.
При выполнении команды tar вы можете использовать длинную или краткую форму операций и параметров tar. Длинные формы более читабельны, а короткие формы – быстрее. Опции длинной формы имеют префикс двойной тире ( –). Параметры короткой формы имеют префикс с одним тире ( -), который можно опустить.
1. Создание архива tar
С помощью следующей команды создается архив archive.tar с подробным выводом информации, включающий файлы file1, file2 и file3:
tar –totals –create –verbose –file archive.tar file1 file2 file3
Но длинные опции и параметры можно заменить (при возможности) однобуквенными значениями:
tar –totals -cvf archive.tar file1 file2 file3
Создание архива Tar Gz
Gzip – самый популярный алгоритм сжатия tar-файлов. При сжатии архивов tar с gzip имя архива должно заканчиваться либо tar.gzили tgz.
Чтобы создать архив tar.gz из заданных файлов, вы можете использовать следующую команду:
tar -czf archive.tar.gz file1 file2
Опция -zсообщает tar сжать архив, используя алгоритм gzip.
Создание архива Tar Bz2
Другим популярным алгоритмом сжатия tar-файлов является bzip2. При сжатии архивов tar с bzip2 имя архива должно заканчиваться либо tar.bz2 либо tbz.
Когда указана опция -j , tar будет использовать алгоритм bzip2 сжатия архива.
Следующая команда создаст архив tar.bz2 из заданных файлов:
tar -cjf archive.tar.bz2 file1 file2
2. Просмотр содержимого архива
Следующая команда выводит содержимое архива, не распаковывая его:
tar -tf archive.tar
Листинг архива Tar
Чтобы перечислить содержимое tar-архива, используйте операцию –list( -t).
tar -tf archive.tarfile1 file2 file3
Если вы укажете содержимое архива с помощью параметра –verbose( -v), tar будет печатать больше информации, например, владельца, размера файла, метки времени и т.д.:
tar -tvf archive.tar-rw-r–r– linuxize/users 0 2018-09-08 20:15 file1 -rw-r–r– linuxize/users 0 2018-09-08 20:15 file2 -rw-r–r– linuxize/users 0 2018-09-08 20:15 file3
Извлечение архивов Tar Gz и Tar Bz2
При извлечении сжатых архивов, например, tar.gzили tar.bz2 вам не нужно указывать параметр декомпрессии. Команда такая же, как при извлечении архива tar:
tar -xf archive.tar.gztar -xf archive.tar.bz2
Извлечение определенных файлов из tar-архива
Чтобы извлечь определенные файлы из архива tar, добавьте список имен файлов, разделенных пробелами, которые будут извлечены после имени архива:
tar -xf archive.tar file1 file2
При извлечении файлов вы должны указать свои точные имена, включая путь, как напечатано –list( -t).
Извлечение одной или нескольких каталогов из архива аналогично извлечению файлов:
tar -xf archive.tar dir1 dir2
Если вы попытаетесь извлечь файл, который не существует, появится сообщение об ошибке, подобное приведенному ниже:
tar -xf archive.tar READMEtar: README: Not found in archive tar: Exiting with failure status due to previous errors
Извлечение файлов из архива Tar с помощью подстановочного знака
Чтобы извлечь файлы из архива на основе шаблона подстановочных знаков, используйте переключатель –wildcards и укажите шаблон, чтобы предотвратить интерпретацию оболочки.
Например, чтобы извлечь файлы, имена которых заканчиваются на .js(файлы Javascript), вы можете использовать:
tar -xf archive.tar –wildcards ‘*.js’
Добавление файлов в существующий архив
Чтобы добавить файлы или каталоги в существующий архив tar, используйте операцию –append( -r).
Например, чтобы добавить файл с именем newfile в archive.tar, вы можете использовать:
tar -rvf archive.tar newfile
Удаление файлов из tar-архива
Используйте операцию –delete для удаления файлов из архива.
Например, чтобы удалить файл с именем file1 из archive.tar, вы можете использовать:
tar –delete -f archive.tar file1
Общая информация по работе с Tar
- tar —help — вызов справки по командам и параметрам
- man tar — вызов расширенной документации
- официальная документация по команде tar — ссылка
Архивация Zip в Linux
Архиватор zip — это звезда в мире ПО (ну не считая rar) этот формат очень популярен для windows систем и он по умолчанию уже встроен в чистую сборку операционной системы, поэтому только установив виндовус вы уже можете разархивировать файлы в формате zip
но давайте перейдем к делу, в Linux и Unix системах дела обстоят по другому, это формат Tar идет по умолчанию, а вот для zip надо поставить пакет unzip
Установка:
- sudo apt-get update && apt-get upgrade
- sudo apt-get install unzip
Создание ZIP архива
Для начала запомним шаблон или синтаксис команды для создания архива zip в linux:
zip [опции] <имя файла.zip=””> [файлы или папки которые будем упаковывать]
Опции для создания архива tar:
- r (recurse) — рекурсивное создание архива
- s (size) — разбивка архива на определенный размер k (kB), m (MB), g (GB) или t (TB)
пример: zip -s 300m <файл 1=”” гб=””>
на выходе получим:
file.zip (300 mb, master file)
file.001.zip (300 mb)
file.002.zip (300 mb)
file.003.zip (100 mb) - P (password) — запаролировать архив (можно использовать ключ e тогда пароль будете вводить в отдельной строке со звездочками )
пример: zip -P мойпароль -r file.zip ./home/nibbl/foto
пример2: zip -er file.zip ./home/nibbl/foto - x — исключаем файлы или каталоги из архива
- 1-9 — степень сжатия (где 1 без сжатия, а 9 лучшее сжатие)
zip –r -9 -P 123 — archive.zip /home/nibbl/desktop/myfile
— данной командой мы заархивировали с сжатием папку myfile создали архив с именем archive.zip и установили пароль на архив 123
Творение tar-архива без сжатия в Linux
Для создания такого архива используется команда:
tar -cf filename.tar file1 file2 fileN
Метеопараметр —cf отвечает за создание архива filename.tar, в который войдут указанные файлы. Вместо файлов смогут быть указаны и директории.
Создание архива с использованием сжатия в Linux
Поскольку для стягивания доступны как минимум два метода, для использования каждого из них используется отдельный набор параметров.
Образчик сжатия Gzip:
tar -cvzf filename.tar.gz dir_name
В данном случае мы попытались запаковать папку dir_name в картотека filename.tar.gz. Из указанных параметров -z указывает на использование метода Gzip, а -v выводит результаты процесса творения архива с указанием упакованных файлов или папок.
Читайте также: Настройка Iptables (примеры) Часть 2
Распаковать zip архив
рассмотрим синтаксис команды что бы распаковать или разархивировать tar архив :
unzip <имя файла.zip=””>
Опции для создания архива tar:
- d (directory) — указать директорию для разархивации
- l — вывести список файлов в архиве
- d — удалить определенный файл или каталог из уже сделанного архива
- v — показывает детальную информацию по файлам в архиве ()
unzip <имя файла.zip=””> — распаковываем архив в категорию в которой находимся
unzip <имя файла.zip=””> -d /home/nibbl/desktop — распаковываем архив на рабочий стол
Общая информация по работе с Zip
- zip —help или unzip —help — вызов справки по командам и параметрам
- man zip или man unzip — вызов расширенной документации
- официальная документация по команде zip — ссылка
Прочие возможности tar в Linux
tar предоставляет множество полезных возможностей. Например, возможно указать файлы и каталоги, которые не будут включены в архив, добавить файлы (именованная область данных на носителе информации) в имеющийся архив (1) учреждение или структурное подразделение организации, осуществляющее хранение, комплектование, учёт и использование архивных документов; 2) собрание письменных памятников (рукописей, писем и т), взять список объектов для запаковки из текстового файла и много что ещё. Во всем обилии опций как всегда поможет разобраться
man tar
или же
tar –help
Утилита командной строки tar используется для службы с архивами в операционных системах на базе UNIX. С ее помощью можно архивировать данные и улучшить использование дискового пространства.
Программа для открытия файлов TAR в системе Windows
Особенно популярным и удобным программным обеспечением для распаковки и открытия файлов .tar.gz и .tar.bz2 в Windows является WinRAR.
Winrar признана классикой среди упаковочного ПО и может быть загружена в тестовой версии с сайта производителя WindowsRAR.ru. С ней файлы в системах Windows могут сжиматься намного эффективнее, чем с форматами ZIP. Лучшая и самая важная функция WinRAR понятна и отлично выполняется упаковщиком: экономит место на диске, время передачи. В дополнение к основной задаче, программное обеспечение предлагает множество других инструментов при архивировании файлов.
Главное преимущество WinRaR заключается в том, что она распознает двойные файлы и распаковывает их непосредственно за один шаг. Даже если вы дважды откроете .tar.gz и .tar.bz2, вы сможете напрямую просмотреть отдельные папки, упакованные в него с помощью архиватора. Это особенно удобно и стоит запомнить, поскольку на самом деле в формате .bz есть только один файл .TAR. Только в нем находятся отдельные оригинальные файлы.
Программа для открытия TAR файлов используется в пробной версии бесплатно в течение 40 дней. Далее производитель предложит вам купить лицензию.
Как распаковать TAR файл?
Уже во время установки ПО можно задать параметры, чтобы файлы .tar распаковывались с помощью WinRAR.
Если на жестком диске есть папка в формате .tar.gz, вы можете просто распаковать ее, дважды щелкнув, как и любой другой архив, поддерживаемый WinRAR.
Если вы не отметили TAR во время установки, файлы этого формата все еще можно извлечь, используя WinRAR.
Если архиватор уже открыт, перейдите в «Файл», чтобы найти путь, по которому находится папка .tar, и два раза кликните по маркеру.
Теперь содержимое архива должно отображаться в программе для открытия TAR файлов.
Как открыть и разархивировать файл TAR?
Если вы часто работаете с архивами .TAR, WindowsRAR следует установить в качестве стандартной для распаковки форматов .tar.gz и .tar.bz2. Если формат папки еще не связан с другим ПО сжатия, два раза нажмите папку TAR. Во втором случае кликните правой клавишей по маркеру упакованного файла TAR, выберите параметр “Открыть с помощью”. В новом окне теперь представлены программы, открывающие файлы в формате TAR.
Если WinRAR отсутствует в списке, выберите «Поиск» в нижней области. Теперь проследите путь, по которому расположен архиватор, и установите его как стандартную программу для открытия расширения TAR. Прежде чем подтвердить настройку нажатием «ОК», убедитесь, что в левой части флажок “Всегда открывать тип файла с выбранной программой”.
Примеры
gz
Распаковка .gz файла:
tar -xvf archive.tar.gz
* при возникновении ошибки This does not look like a tar archive, можно воспользоваться командой gzip -d archive.tar.gz.
bz2
tar -xvjf archive.tar.bz2
* ключ j отвечает за работу с bz2.
Если система ругается на bzip2, значит нужно его установить:
yum install bzip2
apt-get install bzip2
pkg install bzip2
* соответственно, для CentOS (RPM based), Ubuntu (deb based), FreeBSD (BSD based).
Если видим ошибку tar: Unrecognized archive format, воспользуемся следующей командой:
bzip2 -d archive.tar.bz2
gzip
tar -xvzf archive.tar.gzip
* ключ z отвечает за работу с gzip.
tgz
Распаковывается, как gzip:
tar -xvzf archive.tgz
Распаковать в определенную папку
tar -C /home/user -xvf archive.tar.gz
* ключ -C используется для указания папки, куда необходимо распаковать файлы из архива.
Распаковка без вложенной папки
Такой способ можно использовать для распаковки в заранее подготовленный каталог. Будет некий эффект переименовывания каталога или аналог «Распаковать здесь»:
tar -C /home/admin/mytar -xvf admin.tar.gz –strip-components 1
* каталог /home/admin/mytar заранее должен быть создан; –strip-components 1 пропустит одну вложенную папку внутри архива.
Исключение файлов по маске
Если необходимо пропустить некоторые файлы, вводим команду с ключом –exclude:
tar -czvf archive.tar.gz /wwwsite –exclude=’sess_*’
* в данном примере мы создадим архив archive.tar.gz, в котором не будет файлов, начинающихся на sess_.
[spoiler title=”Источники”]- https://windowsrar.ru/tar
- https://andreyex.ru/operacionnaya-sistema-linux/sozdanie-i-izvlechenie-arhivov-s-pomoshhyu-komandy-tar-v-linux/
- https://losst.ru/komanda-tar-v-linux
- https://www.nibbl.ru/ubuntu/komanda-tar-i-zip-v-linux.html
- https://www.linux16.ru/articles/kak-v-linux-raspakovat-tar-gz.html
- https://www.dmosk.ru/miniinstruktions.php?mini=tar-unix