- Как распаковать tar.gz архив в Linux?
- Другие вопросы и ответы
- Категории вопросов:
- Форум по Linux
- Руководство по Ubuntu
- Аналоги программ Windows vs Linux
- Новое в галерее
- Комментарии
- Команда tar в Linux
- Синтаксис команды tar
- Как пользоваться tar
- 1. Создание архива tar
- 2. Просмотр содержимого архива
- 3. Распаковка архива tar Linux
- 3. Работа со сжатыми архивами
- Выводы
- Как распаковать (разархивировать) файл Tar Gz
- Извлечение файла tar.gz
- Извлечение определенных файлов из файла tar.gz
- Извлечение файла tar.gz из stdin
- Вывод файла tar.gz
- Выводы
Как распаковать tar.gz архив в Linux?
Чтобы распаковать tar.gz архив в текущую директорию нужно выполнить команду:
Другие вопросы и ответы
Категории вопросов:
Форум
по Linux
Руководство
по Ubuntu
Аналоги программ
Windows vs Linux
Новое в галерее
Комментарии
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий Родительский комментарий Василий
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий Родительский комментарий Пингвинус
Постоянная ссылка на комментарий Родительский комментарий Helper
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий
Как распаковать на дебиане
test.tar.gz.001
test.tar.gz.002
test.tar.gz.003
test.tar.gz.004
test.tar.gz.005
Постоянная ссылка на комментарий Родительский комментарий Владимир
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий Родительский комментарий qwe123
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий
При разархивации выдаёт ошибку:
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
Что делать?
Постоянная ссылка на комментарий Родительский комментарий cheloveg
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий Родительский комментарий Макс
Ели вы не можете его распаковать, то явно у вас винда, так как распаковывать tar архивы все пингвины умеют изначально!
Ну если вы из неудачных, то 7-Zip можно бесплатно скачать тут:
https://www.7-zip.org/
Постоянная ссылка на комментарий
Постоянная ссылка на комментарий Родительский комментарий
Если упаковано tar, а потом зажато gzip — см. *.tar.gz — тогда tar для распаковки сначала передает архив gzip, а потом сам раскручивает уже собственно tar. Бывают и такие архивы — *.tar.bz2, тогда в опциях tar указывают -xvfj
Постоянная ссылка на комментарий Родительский комментарий NadyBear
С -xvf он как-то сам определяет куда передавать, gz, bz2 или xz, поэтому и спросил. Видимо это для каких-то древних дистрибутивов? У меня по крайней мере всегда с -xvf работало.
Постоянная ссылка на комментарий Родительский комментарий
Команда 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. Просмотр содержимого архива
Следующая команда выводит содержимое архива, не распаковывая его:
3. Распаковка архива tar Linux
Распаковывает архив test.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 — одна из немногих утилит в GNU/Linux, в которой перед использованием однобуквенных параметров, стоящих вместе, можно не ставить знак дефиса.
Выводы
В этой статье была рассмотрена команда tar Linux, которая используется для архивации файлов и поставляется по умолчанию во всех дистрибутивах. В её возможности входит создание и распаковка архива файлов без их сжатия. Для сжатия утилита применяется в связке с популярными компрессорами bzip2 и gzip.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Как распаковать (разархивировать) файл Tar Gz
Если вы путешествуете по миру открытого исходного кода, скорее всего, вы регулярно сталкиваетесь с файлами .tar.gz . Пакеты с открытым исходным кодом обычно доступны для загрузки в форматах .tar.gz и .zip.
Команда tar используется для создания архивов tar путем преобразования группы файлов в архив. Он поддерживает широкий спектр программ сжатия, таких как gzip, bzip2, lzip, lzma, lzop, xz и compress. Изначально Tar был разработан для создания архивов для хранения файлов на магнитной ленте, поэтому он получил название « T ape AR chive».
Gzip — самый популярный алгоритм сжатия файлов tar. По соглашению имя tar-архива, сжатого с помощью gzip, должно заканчиваться на .tar.gz или .tgz .
Короче говоря, файл с расширением .tar.gz представляет собой архив .tar, сжатый с помощью gzip.
tar можно также использовать для извлечения архивов tar, отображения списка файлов, включенных в архив, добавления дополнительных файлов к существующему архиву, а также для различных других операций.
В этом руководстве мы покажем вам, как распаковать (или распаковать) архивы tar.gz и tgz .
Извлечение файла tar.gz
В большинстве дистрибутивов Linux и macOS по умолчанию предустановлена команда tar .
Чтобы извлечь файл tar.gz, используйте параметр —extract ( -x ) и укажите имя файла архива после параметра f :
Команда tar автоматически определит тип сжатия и распакует архив. Эту же команду можно использовать для извлечения архивов tar, сжатых с помощью других алгоритмов, таких как .tar.bz2 .
Если вы пользователь рабочего стола и командная строка вам не подходит, вы можете использовать файловый менеджер. Чтобы распаковать (разархивировать) файл tar.gz, просто щелкните правой кнопкой мыши файл, который вы хотите извлечь, и выберите «Извлечь». Пользователям Windows потребуется инструмент под названием 7zip для извлечения файлов tar.gz.
Параметр -v сделает команду tar более видимой и напечатает имена файлов, извлекаемых на терминале.
По умолчанию tar извлекает содержимое архива в текущий рабочий каталог . Используйте —directory ( -C ) для извлечения архивных файлов в определенный каталог:
Например, чтобы извлечь содержимое архива в /home/linuxize/files , вы можете использовать:
tar -xf archive.tar.gz -C /home/linuxize/files
Извлечение определенных файлов из файла tar.gz
Чтобы извлечь определенный файл (ы) из файла tar.gz, добавьте разделенный пробелами список имен файлов, которые нужно извлечь, после имени архива:
tar -xf archive.tar.gz file1 file2
При извлечении файлов вы должны —list их точные имена, включая путь, как напечатано с помощью —list ( -t ).
Извлечение одного или нескольких каталогов из архива аналогично извлечению файлов:
tar -xf archive.tar.gz dir1 dir2
Если вы попытаетесь извлечь несуществующий файл, отобразится сообщение об ошибке, подобное следующему:
tar -xf archive.tar.gz README
tar: README: Not found in archive tar: Exiting with failure status due to previous errors
Вы также можете извлекать файлы из файла tar.gz на основе шаблона с подстановочными знаками, используя параметр —wildcards и цитируя шаблон, чтобы оболочка не интерпретировала его.
Например, чтобы извлечь файлы, имена которых заканчиваются на .js (файлы Javascript), вы должны использовать:
tar -xf archive.tar.gz --wildcards '*.js'
Извлечение файла tar.gz из stdin
Если вы распаковываете сжатый файл tar.gz, читая архив со стандартного ввода (обычно через канал), вам необходимо указать параметр распаковки. Параметр, который указывает tar читать архивы через gzip, — это -z .
В следующем примере мы загружаем исходники Blender с помощью команды wget и передаем его вывод в команду tar :
wget -c https://download.blender.org/source/blender-2.80.tar.gz -O - | sudo tar -xz
Если вы не укажете вариант декомпрессии, tar укажет, какой вариант вам следует использовать:
tar: Archive is compressed. Use -z option tar: Error is not recoverable: exiting now
Вывод файла tar.gz
Чтобы —list список содержимого файла tar.gz, используйте параметр —list ( -t ):
Результат будет выглядеть примерно так:
Если вы добавите параметр —verbose ( -v ), tar выведет дополнительную информацию, такую как владелец, размер файла, временная метка и т. Д.
-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.gz представляет собой архив Tar, сжатый с помощью Gzip. Чтобы извлечь файл tar.gz, используйте команду tar -xf за которой следует имя архива.
Если у вас есть вопросы, оставьте комментарий ниже.