- Команда tar в Linux
- Синтаксис команды tar
- Как пользоваться tar
- 1. Создание архива tar
- 2. Просмотр содержимого архива
- 3. Распаковка архива tar Linux
- 3. Работа со сжатыми архивами
- Выводы
- Как распаковать tar bz2 xz gz архивы в Linux
- Распаковка tar
- Распаковка tar.bz2, tar.bzip2, tbz2, tb2, tbz
- Распаковка tar.xz, txz
- Распаковка tar.gz, tgz
- Распаковка tar.lzma
- Пояснение опций
- Распаковка в определенную директорию
- Заключение
- Как распаковать bz2 Linux
- Как распаковать bz2 в Linux
- 1. Обычная распаковка bz2
- 2. Выбор файлов для распаковки
- 3. Распаковка в потоке
- 4. Просмотр структуры архива
- Выводы
- Оцените статью:
- Об авторе
- 5 комментариев
Команда tar в Linux
В качестве инструмента для архивации данных в Linux используются разные программы. Например архиватор Zip Linux, приобретший большую популярность из-за совместимости с ОС Windows. Но это не стандартная для системы программа. Поэтому хотелось бы осветить команду tar Linux — встроенный архиватор.
Изначально tar использовалась для архивации данных на ленточных устройствах. Но также она позволяет записывать вывод в файл, и этот способ стал широко применяться в Linux по своему назначению. Здесь будут рассмотрены самые распространенные варианты работы с этой утилитой.
Синтаксис команды tar
Синтаксис команд для создания и распаковки архива практически не отличается (в том числе с утилитами сжатия bzip2 или gzip). Так, чтобы создать новый архив, в терминале используется следующая конструкция:
tar опции архив.tar файлы_для_архивации
Для его распаковки:
tar опции архив.tar
Функции, которые может выполнять команда:
Функция | Длинный формат | Описание |
---|---|---|
-A | —concatenate | Присоединить существующий архив к другому |
-c | —create | Создать новый архив |
-d | —diff —delete | Проверить различие между архивами Удалить из существующего архива файл |
-r | —append | Присоединить файлы к концу архива |
-t | —list | Сформировать список содержимого архива |
-u | —update | Обновить архив более новыми файлами с тем же именем |
-x | —extract | Извлечь файлы из архива |
При определении каждой функции используются параметры, которые регламентируют выполнение конкретных операций с tar-архивом:
Параметр | Длиннный формат | Описание |
---|---|---|
-C dir | —directory=DIR | Сменить директорию перед выполнением операции на dir |
-f file | —file | Вывести результат в файл (или на устройство) file |
-j | —bzip2 | Перенаправить вывод в команду bzip2 |
-p | —same-permissions | Сохранить все права доступа к файлу |
-v | —verbose | Выводить подробную информацию процесса |
—totals | Выводить итоговую информацию завершенного процесса | |
-z | —gzip | Перенаправить вывод в команду gzip |
А дальше рассмотрим примеры того, как может применяться команда tar Linux.
Как пользоваться 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
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.
Источник
Как распаковать tar bz2 xz gz архивы в Linux
Шпаргалка по распаковке tar архивов.
Для распаковки tar-архивов через командную строку используется утилита tar.
Полезно знать, что архивы в формате tar имеют расширение файлов .tar . Также в Linux распространены архивы, которые имеют дополнительное сжатие другими программами. Например, архивы .tar.bz2 , .tar.gz и другие. Все эти архивы можно распаковать утилитой tar.
Распаковка tar
Для распаковки архива в формате .tar в текущую директорию выполните команду:
Распаковка tar.bz2, tar.bzip2, tbz2, tb2, tbz
Распаковка tar.xz, txz
Распаковка tar.gz, tgz
Распаковка tar.lzma
Пояснение опций
x — распаковать архив.
v — Verbose-режим (вывод на экран дополнительной информации во время распаковки).
f — выполнить распаковку архива из файла.
j — вызвать bzip2 для распаковки архива.
z — вызвать gzip
J — вызвать xz
Распаковка в определенную директорию
Чтобы распаковать архив в определенную директорию используется опция -C или —directory , например:
Примечание: директория должна существовать.
Заключение
Мы рассмотрели базовый набор команд, который можно использовать для распаковки различных видов tar-архивов. Существуют также еще некоторые типы архивов, но они менее распространены.
Источник
Как распаковать bz2 Linux
Bzip2 — это алгоритм сжатия файлов, часто использующийся в связке с tar. Дело в том, что сам tar не умеет уменьшать вес архива — эта программа всего лишь упаковывает файлы и папки в несжатом виде.
После этого в действие вступает bzip2, сжимая готовый файл вида *.tar и присваивая ему название *.tar.bz2 либо *.tbz2. В этой статье мы расскажем вам распаковать bz2 linux с помощью команды tar.
Как распаковать bz2 в Linux
1. Обычная распаковка bz2
В большинстве дистрибутивов Linux утилита tar установлена «из коробки». Поэтому для распаковки файлов из архива tar.bz2 достаточно открыть терминал и ввести команду tar с использованием опций —extract (сокращенно -x), которая непосредственно указывает на действие с архивом, а также -f, после которой следует название архива. В некоторых случаях может понадобиться sudo в начале строки.
tar -x -j -f archive.tar.bz2
Если по какой-либо причине работа с терминалом невозможна, следует воспользоваться возможностями файлового менеджера — навести курсор на файл, который нужно извлечь, щелкнуть правой кнопкой мыши и выбрать команду Извлечь либо Извлечь в текущую папку.
Чтобы видеть, какие именно файлы были извлечены, понадобится опция -v, а строка в терминале будет выглядеть так:
tar -xvf archive.tar.bz2
По умолчанию tar извлекает файлы в текущую директорию (как правило, это домашняя папка). Чтобы назначить другое место, куда будет помещено содержимое архива, нужно использовать опцию -С (—directory). Например, для директории /user/losst/new-folder запись должна быть такой:
tar -xjf archive.tar.bz2 -C /home/losst/new-folder
2. Выбор файлов для распаковки
Если нужно извлечь из архива определенные файлы, а не распаковать его целиком, следует после названия архива перечислить названия этих файлов, разделяя их пробелом:
tar -xjf archive.tar.bz2 file1 file2
Когда внутри архива содержатся папки, а требуемые файлы расположены внутри них, придется указывать не только названия, но и полный путь к файлам. Просмотреть структуру архива можно с помощью опции —list (-t) — как это сделать будет рассказано ниже.
Извлечение определенных папок происходит по аналогичной схеме:
tar -xjf archive.tar.bz2 dir1 dir2
При попытке извлечь файл, которого нет в архиве, появится сообщение об ошибке.
Для извлечения группы файлов, в названиях которых есть один и тот же элемент, существует опция —wildcards. Групповым символом шаблона служит звездочка, а сам шаблон необходимо выделять кавычками. Вот пример для извлечения документов, которые имеют расширение odt:
tar -jf archive.tar.bz2 —wildcards ‘*.odt’
3. Распаковка в потоке
Извлекая сжатые файлы из tar.bz2 с использованием стандартного ввода нужно указывать опцию -j. Она указывает на то, что файл был сжат именно bz2.
В данном примере исходные файлы Vim загружаются при помощи команды wget с последующим выводом в команду tar:
wget -c ftp://ftp.vim.org/pub/vim/unix/vim-8.1.tar.bz2 -O — | sudo tar -xj
Если опция -j не будет указана, tar сообщит об этом и укажет способ исправления ошибки примерно так tar: Archive is compressed. Use -j option.
4. Просмотр структуры архива
Для просмотра структуры архива tar bz2 linux предназначена опция —list (-t):
tar -tf archive.tar.bz2
Если добавить еще и опцию —verbose (-v), tar покажет более полную информацию о файлах:
tar -tvf archive.tar.bz2
Выводы
Tar дает огромный выбор возможностей для распаковки архивов tar.bz2. Мы постарались рассказать о них как можно подробнее, но если у вас возникают какие-то сложности с использованием опций tar в терминале, задавайте свои вопросы в комментариях.
Нет похожих записей
Оцените статью:
Об авторе
Больше восьми лет назад мною было принято решение объявить бойкот оконной монополии и установить на свой компьютер Ubuntu. С тех пор это моя основная ОС. Иногда в порядке эксперимента «подселяю» к ней собратьев из семьи Linux. Увлекаюсь фотографией и горным туризмом. В свободное от работы время пишу статьи для losst.ru.
5 комментариев
Как всегда, все просто и понятно.
Единственный сайт от которого разрешены уведомления в браузере )).
Спасибо за раскрытие очень сложных для понимания тем.
Ждём не дождемся, когда выпустите статью про архивы .tar.xz
Не претендую на истину в последней инстанции, но хочу отметить следующий момент.
Многие пользователи Линукса пришли из лагеря Виндоуса. В Виндовсе термины «упаковка», «архивирование» и «сжатие» обозначают одно действие — создание сжатого файла, содержащего один или несколько файлов и/или папок. Степень сжатия может быть разная — от несжатого совсем до максимального. Но как правило сжатие происходит. Отсюда у Виндовс-пользователей выработалось стойкое понятие, что «упаковка», «архивирование» и «сжатие» — это одно и тоже. Только разными словами.
В Линуксе всё немножко иначе. В Линуксе понятия «упаковка» и «архивирование» обозначают только объединение нескольких файлов и директориев в один файл. Про сжатие информации ничего не говориться, оно вообще отсутствует как класс. Это сложилось исторически давным давно, в эпоху UNIX-а и больших накопителей на магнитной ленте. В те времена ни о каких компрессорах/декомпрессорах не было и речи. А вот понятие «сжатие» обозначает именно уменьшение объёма информации. Сжатие происходит обычно после архивирования. Но поскольку эти два раздельных процесса (архивирование и сжатие) выполняются для Линукс-пользователя за одну команду, создаётся ложное представление, что В Линуксе всё работает точно так же, как в Виндоусе.
Это не опасное заблуждение, можно было и не заострять на этом внимание. Однако, понимание природы вещей — это то, что отличает профессионала от дилетанта. Чем лучше вы знаете Линукс, тем больше он вам нравится. И тем меньше вам будет хотеться использовать сами-знаете-что.
стоит иметь ввиду, что операционные системы на базе ядра *Linux* многогранны и решают несколько видов типовых задач, если говорить об упаковке и сжатии. наследие — это tar и целый набор компрессоров, которые tar умеет подключать налету. но архивирование при помощи *tar* имеет место, когда вы уверены, что ваш архив будет использован именно в *Linux* окружении. и обстоятельства не всегда складываются так. иногда ваш архив должен быть легко и просто распакован в других средах. (зло не упоминаю всуе.) и на этот случай любая операционная система на базе *Linux* имеет целый ряд архиваторов, а именно: zip, 7z, rar etc. эти архиваторы не сохраняют нативные для *Linux* атрибуты файлов, но их архивы без труда распаковываются на других системах. (зло не упоминаю всуе). так вот в этом случае упаковка и сжатие имеет тот же самый характер как и в зле, и выполняется одним единственным процессом. поэтому расставляя точки над i стоит смотреть по сторонам и различать все детали и частности.
файл любого типа может быть упакован при помощи bzip2. а вот каталог — нене, понадобится tar — который и делает из каталога или группы файлов один файл, при этом архивируя атрибуты и обеспечивая безпотерьное извлечение всех упакованных данных в архив данных.
Источник