Распаковать tar, создать tar - удобная инструкция.

Добрый день!

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

Как распаковать архив tar:

В Windows:

В Linux/Unix системах:

1. С помощью MC (Midnight Commander - популярный файл-менеджер для Linux систем, есть в любом репозитарии) - просто зайдите в tar-файл, как в папку и скопируйте оттуда содержимое.

2. Из консоли с помощью команд:

tar -xvf archive-file . tar

tar - xvf archive-file . tar . gz

tar -xvf archive-file.tar.bz2

tar -xvf archive-file . tar -C /папка_для_распаковки

Расшифровка: x - ключ, показывающий, что требуется распаковать архив; v - включает визуально отображение процесса распаковки; f - ключ, после которого указываем имя файла для распаковки; C - можно (но не обязательно) указать путь для распаковки. Если путь не указан - распаковка будет произведена в текущую папку.

Как создать tar:

В Linux/Unix системах:

tar -cf files . tar ./папка_с_файлами - создать простой архив tar без сжатия

tar - cvzf files . tar . gz . /папка_с_файлами - создать архив tar, сжатый с помощью gzip

tar -cvjf files.tar.bz ./папка_с_файлами - создать архив tar, сжатый с помощью bzip2

Ключи: c - создать архив; f - указать название файла; z - использовать сжатие gzip (самое популярное); j - использовать сжатие bzip2; v - включает визуально отображение процесса распаковки;

В Windows:

1. Нажмите правой кнопкой мыши на папке или выделенных файлах, выберите в меню "7-Zip" -> "Добавить к архиву...":

2. Выберите формат архива - tar, при необходимости измените название архива и другие настройки и нажмите "Ок":

Полезное об архиваторе Tar:

Tar - основной архиватор для Linux и Unix систем. Если вы делаете архив для такой системы, лучше используйте tar. Zip тут, хоть и поддерживается, но работает в разы медленнее и не используется многими системами.

Если при создании архива tar применяются средства сжатия, принято указывать их в имени файла. Например: files.tar.gz - архив tar, при создании которого применено сжатие gzip, files.tar.bz2 - архив tar с использованием сжатия bzip2.

Если у вас остались вопросы или нужны уточнения - пожалуйста, задайте вопрос или оставьте комментарий.

Я всегда рад помочь!

tar - это архиватор от GNU. tar берёт несколько файлов и/или каталогов и объединяет их в один большой файл. Это позволяет вам сжать целое дерево каталогов, что невозможно сделать с помощью или bzip2. У tar"а есть много опций, которые подробно описаны на его странице руководства.

$ man tar tar -xvvf foo.tar extract foo.tar tar -xvvzf foo.tar.gz extract gzipped foo.tar.gz tar -cvvf foo.tar foo/ tar contents of folder foo in foo.tar

Часто используемые ключи команды tar

    C – создать (create) новый архив

    X – извлечь (extract) файлы из архива

    –delete – удалить (delete) файлы из архива

    R – добавить (append) файлы в существующий архив

    A – добавить (append) tar-файлы в существующий архив

    T – список файлов в архиве (содержимое архива)

    U – обновить (update) архив

    D – операция сравнения архива с заданной файловой системой

    Z – обработка архива с помощью Примеры использования gzip и gunzip . Сжатие или разжатие, в зависимости от комбинации сопутствующих ключей -c или -x.

    J – обработка архива с помощью bzip2. Сжатие или разжатие, в зависимости от комбинации сопутствующих ключей -c или -x.

tar запускается с обязательным указанием одного из основных действий, самые распространенные из которых - создание и распаковка архивов, далее задаются прочие параметры, зависящие от конкретной операции.

Наиболее общее использование tar заключается в распаковке и разархивировании пакета, загруженного с веб- или ftp-сайта. Большинство файлов имеют расширение.tar.gz. Довольно часто их называют “tarball”"ами. Это означает несколько файлов, заархивированных tar"ом, а затем сжатых gzip"ом. Вы также можете встретить файлы.tar.Z. По сути это то же самое, однако встречаются они в основном на старых системах Unix.

Кроме того вы можете натолкнуться на файлы.tar.bz2. В таком виде распространяются исходные тексты ядра, поскольку так они занимают меньше места для загрузки. Как вы уже наверное догадались, это файлы, заархивированные tar"ом и сжатые bzip"ом.

Вы можете извлечь все файлы из такого архива, воспользовавшись tar"ом с несколькими опциями командной строки. Разархивирование тарбола выполняется с помощью опции -z, которая означает, что сначала файл должен быть пропущен через gunzip, а уже потом распакован. Наиболее общий метод распаковки тарболов:

% tar -xvzf файл.tar.gz

Здесь довольно много опций. Что же они означают? Опция -x означает извлечение. Это важно, поскольку она сообщает tar"у, что именно нужно сделать со входным файлом. В данном случае он будет снова разбит на файлы, из которых он был “слеплен”. Опция -v означает включение подробного режима. При этом на экран будут выведены названия всех извлекаемых из архива файлов. Неплохо было бы использовать эту опцию, чтобы распаковка не выглядела слишком скучно. Вы также можете использовать -vv, чтобы вывод был ещё более подробным и вы получили ещё больше информации об извлекаемых файлах. Опция -z сообщает tar"у о том, что файл.tar.gz нужно сначала пропустить через gunzip. И, наконец, опция -f сообщает tar"у, что следующая строка в командной строке - это файл, с которым надо работать.

Существует несколько способов записи этой же команды. На старых системах, на которых отсутствует подходящая копия GNU tar, вы можете увидеть следующую запись этой же команды:

% gunzip файл.tar.gz | tar -xvf -

В этой команде файл сначала распаковывается, а результат отправляется в tar. Т.к. gzip по умолчанию записывает выходные данные на стандартный вывод, эта команда будет записывать распакованный файл на стандартный вывод. Затем конвейер перенаправляет этот поток в tar для распаковки. Знак “-” означает, что данные берутся со стандартного входа. Таким образом команда разархивирует поток данных, полученный из gzip, и запишет его на диск.

Другим способом записи первоначальной команды является убирание знака “-” перед опциями:

% tar xvzf файл.tar.gz

Также вы можете натолкнуться на bzip"нутый архив. Версия tar, представленная в Slackware Linux, может работать с ними точно так же, как и с gzip"нутыми архивами. Просто вместо опции -z вам нужно использовать -j:

% tar -xvjf файл.tar.bz2

Учтите, что tar будет сохранять извлечённые из архива файлы в текущий каталог. Поэтому, если у вас в /tmp есть архив, который вы хотите распаковать в свой домашний каталог, у вас есть несколько вариантов. Первый - архив можно переместить в ваш домашний каталог, а затем развернуть его с помощью tar. Второй - вы можете указать путь к архиву в командной строке. Третий - вы можете использовать опцию -C, чтобы разархивировать тарбол в указанный после этой опции каталог.

% cd $HOME % cp /tmp/файл.tar.gz . % tar -xvzf файл.tar.gz % cd $HOME % tar -xvzf /tmp/файл.tar.gz % cd / % tar -xvzf /tmp/файл.tar.gz -C $HOME

Все приведенные выше записи являются эквивалентными. В каждой из них архив разворачивается в ваш домашний каталог, а исходный сжатый архив остаётся на месте.

Итак, что же хорошего в том, что вы можете распаковывать архивы, если вы не можете создавать их? tar умеет делать и это. В большинстве случаев можно просто заменить опцию “-x” на “-c”.

% tar -cvzf файл.tar.gz .

В этой команде опция -c сообщает tar"у, что нужно создать архив, а опция -z пропускает полученный архив через gzip, чтобы сжать его. файл.tar.gz - это имя создаваемого файла.

Указание опции “-f” не всегда есть обязательным, однако в любом случае лучше её использовать. Без неё tar будет записывать свои данные на стандартный вывод, что обычно используется для перенаправления потока по конвейеру в другую программу, например, так:

% tar -cv файл.tar . | gpg --encrypt

Эта команда создаёт несжатый tar-архив с содержимым текущего каталога, а затем пропускает тарбол через программу gpg, которая шифрует и сжимает архив, делая невозможным его чтение кем-либо, у кого нет вашего секретного ключа.

tar через ssh

Если компьютер-источник и целевой компьютер связаны по LAN или WAN, то для экономии времени можно комбинировать использование SSH (Secure Shell) и tar для архивирования, копирования и извлечения файлов за один раз. Вот как это делать:

$ (cd ~/stuff; tar --create --gzip --file - *) | \ ssh destination tar --extract --gunzip --file --verbose -C stuff

В этой команде выполняется сразу несколько действий. Давайте разберем ее:

    Последовательность команд, заключенных в круглых скобках, называют вложенной оболочкой - subshell. Изменения, сделанные в subshell-оболочке - например, изменение каталога, - не повлияют на команду в целом, а затронут только среду вложенной оболочки. Поэтому первая управляющая последовательность - (cd ~/stuff; tar –create –gzip –file - *) меняет текущий рабочий каталог на ~/stuff, а затем запускает tar. Так как за вложенной оболочкой следует перенаправление в канал, то все результаты работы subshell посылаются в следующую на очереди команду.

    Как и много других UNIX-утилит, tar может писать в стандартный поток вывода (stdout) и читать из стандартного потока ввода (stdin). И stdout и stdin обычно обозначаются дефисом (-). Поэтому команда –create –file - создает архив в stdout.

    Канал (|) передает все результаты работы subshell в утилиту ssh, которая, в свою очередь, передает все необходимые данные с исходного компьютера на удаленный.

    Наконец, удаленный компьютер запускает собственный экземпляр утилиты tar для извлечения данных из архива. Теперь –extract –file - считывает архив из стандартного потока ввода. Опция -C принуждает tar на целевом компьютере сменить текущий рабочий каталог на stuff, прежде чем начать какие-либо операции разархивирования. Конечным результатом работы этой команды в целом будет передача архива через ssh и распаковка его в ~/stuff.

Итак, с помощью одной команды архив был создан, передан и распакован. Кстати, слегка изменив эту команду, можно копировать архив с удаленного компьютера на локальный и разархивировать его. Вот команда, которую для этого надо выполнить на локальном компьютере:

$ ssh destination cat archive.tgz | \ (cd ~/stuff; tar --extract --gunzip --file -)

Архив на удаленном компьютере будет открыт, затем поток байтов из cat будет послан во вложенную оболочку, которая сменит рабочий каталог, а затем извлечет архив. (Добавление -C ~/stuff к команде tar приведет к тем же результатам; пример показывает только то, что subshell тоже могут работать со входными данными.)

tar exclude

–exclude pattern (-W exclude=pattern) Не обрабатывать файлы или директории, которые совпадают с указанным шаблоном. Учтите, что исключения имеют приоритет над шаблонами или именами файлов, указанных в командной строке.

    Пример: Из директории test при архивировании tar исключить поддиректорию.svn tar -czf test1.tar.gz --exclude=".svn" test/

    Пример: При архивировании текущей директории и сжатием Примеры использования gzip и gunzip , исключить файл с расширениями.tar.gz .iso .deb .py $ tar -czf test.tar.gz *.* --exclude="*.tar.gz" --exclude="*.iso" --exclude="*.deb" --exclude="*.zip" --exclude="*.py"

tar с сохранением прав доступа

Создать архив с сохранением прав доступа. Ключ -p, –preserve-permissions, –same-permissions извлекать информацию o правах доступа к файлу (по умолчанию для суперпользователя)

Tar -cvpf archive.tar.gz dir1

Распаковать архив с сохранением прав доступа

Tar -xvpf archive.tar.gz

tar распаковать в нужную директорию

Чтобы распаковать архив в нужную директорию используется ключ -С

# man tar ... -C directory In c and r mode, this changes the directory before adding the following files. In x mode, change directories after opening the archive but before extracting entries from the archive. ...

Например, пример проверен для FreeBSD:

# tar -xvf /usr/home/darkfire/backup.ns.server.254/usr/ports/distfiles.tar -C /usr/ports/

tar split разбить архив на несколько частей

Split -b 1000m distfiles.tar distfiles.split.tar

В итоге вы получите много файликов типа

Distfiles.split.taraa distfiles.split.tarab distfiles.split.tarai

100m означает 100 мегабайт. Можете написать 100k - это будет 100 киллобайт. Собрать обратно их можно вот так:

Cat distfiles.split.tar* | tar zxvf -

В качестве инструмента для архивации данных в Linux используются разные программы. Например , приобретший большую популярность из-за совместимости с ОС Windows. Но это не стандартная для системы программа. Поэтому хотелось бы осветить команду tar Linux - встроенный архиватор.

Изначально tar использовалась для архивации данных на ленточных устройствах. Но также она позволяет записывать вывод в файл, и этот способ стал широко применяться в Linux по своему назначению. Здесь будут рассмотрены самые распространенные варианты работы с этой утилитой.

Синтаксис команд для создания и распаковки архива практически не отличается (в том числе с утилитами сжатия bzip2 или gzip ). Так, чтобы создать новый архив, в терминале используется следующая конструкция:

tar опции архив.tar файлы_для_архивации

Для его распаковки:

tar опции архив.tar

Функции, которые может выполнять команда:

При определении каждой функции используются параметры, которые регламентируют выполнение конкретных операций с tar-архивом:

Как пользоваться tar

С помощью следующей команды создается архив archive.tar с подробным выводом информации, включающий файлы file1 , file2 и file3 :

tar --totals --create --verbose --file archive.tar file1 file2 file3

Но длинные опции и параметры можно заменить (при возможности) однобуквенными значениями:

tar --totals -cvf archive.tar file1 file2 file3

2. Просмотр содержимого архива

Следующая команда выводит содержимое архива, не распаковывая его:

tar -tf archive.tar

3. Распаковка архива tar Linux

Распаковывает архив test.tar с выводом файлов на экран:

tar -xvf archive.tar

Чтобы сделать это в другой каталог, можно воспользоваться параметром -C :

tar -C "Test" -xvf archive.tar

3. Работа со сжатыми архивами

Следует помнить, что tar только создаёт архив, но не сжимает. Для этого используются упомянутые компрессорные утилиты bzip2 и gzip . Файлы, сжатые с их помощью, имеют соответствующие расширения .tar.bz2 и .tar.gz . Чтобы создать сжатый архив с помощью bzip2, введите:

tar -cjvf archive.tar.bz2 file1 file2 file3

Синтаксис для gzip отличается одной буквой в параметрах, и меняется окончание расширения архива:

tar -czvf archive.tar.gz file1 file2 file3

При распаковке tar-архивов с таким расширением следует указывать соответствующую опцию:

tar -C "Test" -xjvf arhive.tar.bz2

tar -xzvf archive.tar.gz

На заметку: архиватор tar - одна из немногих утилит в GNU/Linux, в которой перед использованием однобуквенных параметров, стоящих вместе, можно не ставить знак дефиса.

Выводы

В этой статье была рассмотрена команда tar Linux, которая используется для архивации файлов и поставляется по умолчанию во всех дистрибутивах. В её возможности входит создание и распаковка архива файлов без их сжатия. Для сжатия утилита применяется в связке с популярными компрессорами bzip2 и gzip .

В большинстве случаев, веб имеют определённые ограничения, когда заходит речь о распаковке файлов. Или может быть вы используете VPS вовсе без какой-либо панели, и распаковка архива потребует и выполнить команды ssh над архивом определённого типа. Наиболее распространённые типы архивов .tar ; .tar.gz и .zip , для каждого есть своя команда создания и распаковки.

Распаковка архивов, используя команды SSH

Прежде всего, вам понадобится перейти в тот каталог, где находится ваш архив. К примеру, если ваш архив находится в каталоге public_html/files , выполните команду, чтобы перейти туда:

Cd public_html/files

Как распаковать.tar.gz

Следующая команда позволит вам распаковать содержимое архива.tar.gz:

Tar -zxvf ArchiveName.tar.gz

На экран будет выведен список файлов из архива и по завершению распаковки вы сможете ввести другую команду, при необходимости.

Как распаковать.tar

Файл архива с таки типом сжатия можно распаковать следующей командой:

Tar -xvf ArchiveName.tar

На экран появится список файлов вашего архива и по завершению распаковки консоль освободится для введения других команд.

Как распаковать.zip

Эта команда позволит распаковать.zip:

Unzip ArchiveName.zip

Как только завершиться процесс, командная строка будет свободна.

Создание архивов, используя команды SSH

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

Как создать.tar.gz

Показанный ниже метод позволит вам сжать выбранные файлы в архив:

Tar -zcf NewArchive.tar.gz yourfile1.php yourfile2.php yourfile3.txt

Если вам нужно сжать содержимое каталога, воспользуйтесь этой командой:

Tar -zcf NewArchive.tar.gz DirectoryName

По завершению, как и раньше, консоль освободится для дальнейших операций.

Как создать.tar

Синтаксис создания архива.tar при помощи команды ssh очень простой:

Tar -zcf archive-name.tar.gz filename1.php filename2.php filename3.php

Если вы хотите заархивировать каталог, просто укажите имя каталога в списке файлов для архивации.

Tar -zcf archive-name.tar.gz DirectoryName

Как только вы сможете снова запускать команды, это значит ваш архив готов.

Как создать.zip

Этот тип архива создавать ещё проще. Синтаксис выглядит так:

Zip archive-name.zip filename1.php filename2.php filename3.php

Сжатие каталога имеет такой же синтаксис:

Zip archive-name DirectoryName

На экране будет показан процесс создания архива и после завершения создания консоль снова освободится для других команд.

Заключение

Поздравляем! Следуя этим простым инструкциям вы теперь знаете? как создавать и распаковывать.tar.gz, .tar, .zip архивы, используя команды SSH.

В наши дни мы сталкиваемся с файлами архивов очень часто и на всех платформах: Windows, Mac или Linux. Это могут быть программы, резервные копии систем или баз данных или просто архив файлов. Нам также часто приходится создавать свои архивы в Linux, чтобы передать несколько файлов друзьям или загрузить на файлообменник. В виде архивов распространяются пакеты программ, исходные коды, а также много других файлов, распространяемых на просторах интернета. Научиться выполнять архивирование файлов в Linux через терминал очень важно, возможно это вам понадобиться, когда не будет доступа к графическому интерфейсу, или просто со временем в терминале станет более приятно работать.

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

Важно отметить, что архивирование в linux это не одно и то же что и сжатие файлов linux. Архивирование - это объединение нескольких небольших файлов в один, с целю более удобной последующей передачи, хранения, шифрования или сжатия. Как я уже сказал, архивация выполняется специальными утилитами. Мы не будем трогать архивацию файлов в графическом интерфейсе, вы с ними разберетесь сами, наша тема - терминал.

Самой популярной для Linux утилитой для архивации есть tar. Она используется почти везде, для архивации исходников, упаковки пакетов. Для сжатия используются другие утилиты, в зависимости от алгоритма сжатия, например, zip, bz, xz, lzma и т д. Сначала выполняется архивация, затем сжатие, отдельными программами. Автоматический запуск некоторых утилит сжатия для только что созданного архива поддерживается в tar и других подобных программах с помощью специальных опций.

Также полезной возможностью архивации есть шифрование. Но теперь давайте рассмотрим какие существуют утилиты, с помощью которых выполняется архивирование файлов linux и как ими пользоваться.

Tar

Tar - это стандартная утилита, с помощью которой выполняется архивирование файлов Linux. Постепенно из небольшой программы архивации она превратилась в мощный инструмент, поддерживающий работу со многими вариантами архивов и алгоритмами сжатия. Программа поддерживает большое количество параметров. Давайте рассмотрим ее синтаксис и основные параметры:

$ tar опцииf файл_для_записи /папка_файлами_для_архива

А теперь разберем основные опции:

  • A - добавить файл к архиву
  • c - создать архив в linux
  • d - сравнить файлы архива и распакованные файлы в файловой системе
  • j - сжать архив с помощью Bzip
  • z - сжать архив с помощью Gzip
  • r - добавить файлы в конец архива
  • t - показать содержимое архива
  • u - обновить архив относительно файловой системы
  • x - извлечь файлы из архива
  • v - показать подробную информацию о процессе работы
  • f - файл для записи архива
  • -C - распаковать в указанную папку
  • --strip-components - отбросить n вложенных папок

Теперь давайте рассмотрим архивирование файлов в Linux. Чтобы создать архив используйте такую команду:

tar -cvf archive.tar.gz /path/to/files

А чтобы распаковать архив tar linux:

tar -xvf archive.tar.gz

Очень просто запомнить для упаковки используется опция c - C reate, а для распаковки - x - eX tract.

Сжатый архив создается точно так же, только с опцией -z, это в случае, если использовалось шифрование gizp, если нужно bzip то применяется опция -j:

tar -zcvf archive.tar.gz /path/to/files

$ tar -zxvf archive.tar.gz

Например, рассмотрим как заархивировать папку в Linux:

tar -zcvf home.tar.gz ~/

Хотя можно поступить по-другому, тот же архив мы получим если сначала создать обычный архив с помощью tar, а потом сжать его утилитой для сжатия, только здесь мы получаем больше контроля над процессом сжатия:

gzip archive.tar

Также можно убрать сжатие:

gunzip archive.tar.gz

Утилиты сжатия мы рассмотрим ниже.

Чтобы добавить файл в архив используйте:

tar -rvf archive.tar file.txt

Для извлечения одного файла синтаксис тот же:

tar -xvf archive.tar file.txt

Можно извлечь несколько файлов по шаблону соответствия с помощью параметра wildcard, например, извлечем все php файлы:

tar -xvf archive.tar --wildcards "*.php"

По умолчанию распаковать архив tar linux можно в текущую папку с именем архива, чтобы распаковать в нужную папку используйте ключ -C:

tar -xvf archive.tar -C /path/to/dir

Стандартную утилиту рассмотрели, теперь кратко рассмотрим ее альтернативы. Их не так много, и большинство из них уже устаревшие.

Shar

Shar позволяет создавать самораспаковывающиеся архивы. По сути, это скрипт оболочки, и для распаковки ему необходима оболочка Bash или другая совместимая с Bourne Shell. У Shar есть несколько преимуществ, но также он потенциально небезопасный, так как архив представляет собой исполняемый файл.

Опции shar:

  • -o - сохранять архив в файл вместо стандартного вывода
  • -l - ограничить размер выходного файла
  • -L - ограничить размер выходного файла и разбить его на части
  • -n - имя архива не будет включено в заголовок
  • -a - разрешить автоматическую генерацию заголовков

Примеры использования shar для того чтобы заархивировать папку linux:

Создаем shar архив:

shar file_name.extension > filename.shar

Распаковываем shar архив:

Ar

ar - утилита для создания и управления архивами. В основном используется для архивации статических библиотек, но может быть использована для создания любых архивов. Раньше использовалась довольно часто но была вытеснена утилитой tar. Сейчас используется только для создания и обновления файлов статических библиотек.

  • - d - удалить модули из архива
  • - m - перемещение членов в архиве
  • - p - напечатать специфические члены архива
  • - q - быстрое добавление
  • - r - добавить члена к архиву
  • - s - создать индекс архива
  • - a - добавить новый файл к существующему архиву

Теперь рассмотрим примеры использования. Создадим статическую библиотеку libmath.a из объектных файлов substraction.o и division.o:

ar cr libmath.a substraction.o division.o

Теперь извлечем файлы из архива:

Таким образом, можно распаковать любую статическую библиотеку.

Cpio

cpio - означает Copy in and out (скопировать ввод и вывод). Это еще один стандартный архиватор для Linux. Активно используется в менеджере пакетов Red Hat, а также для создания initramfs. Архивация в Linux для обычных файлов с помощью этой программы не применяется.

Опции утилиты:

  • -a - сбросить время обращения к файлам после их копирования
  • -A - добавить файл
  • -d - создать каталоги при необходимости

Пример использования. Создаем cpio архив:

file1.o file2.o file3.o

ls | cpio -ov > /path/to/output_folder/obj.cpio

Распаковываем архив:

cpio -idv < /path/to folder/obj.cpio

Архивирование папки linux выполняется также само.

Сжатие архивов в Linux

Как создать архив в linux рассмотрели. Теперь давайте поговорим о сжатии. Как я говорил, для сжатия используются специальные утилиты. Рассмотрим кратко несколько из них

Gzip

Чаще всего применяется Gzip. Это стандартная утилита сжатия в Unix/Linux. Для декомпрессии используется gunzip или gzip -d Сначала рассмотрим ее синтаксис:

$ gzip опции файл

$ gunzip опции файл

Теперь разберем опции:

  • -c - выводить архив в стандартный вывод
  • -d - распаковать
  • -f - принудительно распаковывать или сжимать
  • -l - показать информацию об архиве
  • -r - рекурсивно перебирать каталоги
  • -0 - минимальный уровень сжатия
  • -9 - максимальный уровень сжатия

Примеры использования вы уже видели в описании утилиты tar. Например, выполним сжатие файла:

gzip -c файл > архив.gz

А теперь распакуем:

gunzip -c архив.gz

Но чтобы сжать папку в Linux вам придется сначала заархивировать ее с помощью tar, а уже потом сжать файл архива с помощью gzip.

Bzip

bzip2 - еще одна альтернативная утилита сжатия для Linux. Она более эффективная чем gzip, но работает медленнее. Для распаковки используйте утилиту bunzip2.

Описывать опции bzip2 я не буду, они аналогичны gzip. Чтобы создать архив в Linux используйте:

В текущем каталоге будет создан файл file.bz2

Lzma

Новый и высокоэффективный алгоритм сжатия. Синтаксис и опции тоже похожи на Gzip. Для распаковки используйте unlzma.

Xz

Еще один высокоэффективный алгоритм сжатия. Обратно совместимый с Lzma. Параметры вызова тоже похожи на Gzip.

Zip

Кроссплатформенная утилита для создания сжатых архивов формата zip. Совместимая с Windows реализациями этого алгоритма. Zip архивы очень часто используются для обмена файлами в интернете. С помощью этой утилиты можно сжимать как файлы, так и сжать папку linux.

Синтаксис утилиты:

$ zip опции файлы

$ unzip опции архив

Опции утилиты:

  • -d удалить файл из архива
  • -r - рекурсивно обходить каталоги
  • -0 - только архивировать, без сжатия
  • -9 - наилучший степень сжатия
  • -F - исправить zip файл
  • -e - шифровать файлы

Чтобы создать Zip архив в Linux используйте.



В продолжение темы:
Android

Популярная социальная сеть ВКонтакте позволяет находить новых друзей и держать контакт со всеми близкими. Помимо этого, каждый пользователь может делиться собственными...