Как извлечь (распаковать) файл Tar Bz2
Как извлечь (распаковать) файл Tar Bz2
How to Extract (Unzip) Tar Bz2 File
В этом руководстве мы объясним, как извлечь (или распаковать) архивы tar.bz2 и tbz2 с помощью tar команды.

tar
позволяет создавать и распаковывать архивы tar. Он поддерживает широкий спектр программ сжатия, таких как gzip, bzip2, lzip, lzma, lzop, xz и compress.
Bzip2 - один из самых популярных алгоритмов сжатия файлов tar. По соглашению имя архива tar, сжатого с помощью bzip2, оканчивается на .tar.bz2 или .tbz2 .
Извлечение файла tar.bz2
Большинство дистрибутивов Linux и macOS поставляются с утилитой tar, предварительно установленной по умолчанию.
Чтобы извлечь файл tar.bz2, используйте параметр --extract
( -x
) и укажите имя файла архива после -f
параметра:
tar -jf archive.tar.bz2
Команда tar
автоматически определяет тип сжатия и извлекает архив. Эту же команду можно использовать для извлечения архивов tar, сжатых с помощью других алгоритмов, таких как .tar.gz .
Если вы пользователь Desktop, а командная строка - не ваша вещь, вы можете использовать диспетчер файлов. Чтобы извлечь (распаковать) файл tar.bz2, просто щелкните правой кнопкой мыши файл, который вы хотите извлечь, и выберите «Извлечь». Пользователям Windows понадобится инструмент с именем 7zip для извлечения файлов tar.bz2.
Для более подробного вывода используйте -v
опцию. Эта опция указывает tar
отображать имена файлов, извлекаемых на терминале.
tar -xvf archive.tar.bz2
По умолчанию tar
будет извлекаться содержимое архива в текущем рабочем каталоге . Используйте --directory
( -C
) для извлечения архивных файлов в определенную директорию:
Например, чтобы извлечь содержимое архива в /home/linuxize/files
каталог, введите:
tar -jf archive.tar.bz2 -C /home/linuxize/files
Извлечение определенных файлов из файла tar.bz2
Чтобы извлечь определенные файлы из файла tar.bz2, добавьте разделенный пробелами список имен файлов, которые будут извлечены после имени архива:
tar -jf archive.tar.bz2 file1 file2
При извлечении файлов вы должны указать их точные имена, включая путь, как указано при использовании опции --list
( -t
).
Извлечение одного или нескольких каталогов из архива аналогично извлечению нескольких файлов:
tar -jf archive.tar.bz2 dir1 dir2
Если вы попытаетесь извлечь файл, который не существует в архиве, появится сообщение об ошибке, подобное следующему:
tar -jf archive.tar.bz2 README
tar: README: Not found in archive
tar: Exiting with failure status due to previous errors
Опция позволяет извлекать файлы из файла tar.bz2 на основе группового символа шаблона. Шаблон должен быть заключен в кавычки, чтобы оболочка не могла его интерпретировать.
--wildcards
Например, чтобы извлечь только файлы, имена которых оканчиваются на .md
(Markdown files), вы должны использовать:
tar -jf archive.tar.bz2 --wildcards '*.md'
Извлечение файла tar.bz2 из стандартного ввода
При извлечении сжатого файла tar.bz2 путем чтения архива из стандартного ввода (обычно через конвейерную передачу) необходимо указать параметр распаковки. -j
Опция указывает, tar
что файл сжимается с помощью bzip2.
В приведенном ниже примере мы загружаем исходные тексты Vim, используя wget
команду, и направляем ее вывод в tar
команду:
wget -c ftp://ftp.vim.org/pub/vim/unix/vim-8.1.tar.bz2 -O - | sudo tar -xj
Если вы не укажете опцию декомпрессии, tar
вам покажут, какую опцию вы должны использовать:
tar: Archive is compressed. Use -j option
tar: Error is not recoverable: exiting now
Перечисление файла tar.bz2
Чтобы просмотреть содержимое файла tar.bz2, используйте параметр --list
( -t
):
tar -tf archive.tar.bz2
Вывод будет выглядеть примерно так:
file1
file2
file3
Если вы добавите параметр --verbose
( -v
), tar
будет напечатано больше информации, такой как владелец, размер файла, отметка времени .. и т. Д .:
tar -tvf archive.tar.bz2
-rw-r--r-- linuxize/users 0 2019-02-15 01:19 file1
-rw-r--r-- linuxize/users 0 2019-02-15 01:19 file2
-rw-r--r-- linuxize/users 0 2019-02-15 01:19 file3
Вывод
Файл tar.bz2 является архив Tar, сжатый с помощью Bzip2. Чтобы извлечь файл tar.bz2, используйтеtar -jf
command followed by the archive name.