Глиф Учебники

Как распаковать tar.gz, zip и другие архивы

Справочник · Командная строка Linux · 1 минута чтения

Bash
tar -xzf archive.tar.gz

Архив распакуется в текущую папку. x — распаковать, z — архив сжат gzip, f — дальше имя файла. Хотите видеть имена файлов по ходу — добавьте v: tar -xvzf archive.tar.gz.

В нужную папку (она должна существовать):

Bash
mkdir -p ~/restore
tar -xzf archive.tar.gz -C ~/restore

Посмотреть содержимое, ничего не распаковывая:

Bash
tar -tzf archive.tar.gz

Другие форматы

ФайлКоманда
.tar.gz, .tgztar -xzf файл
.tar.xztar -xJf файл
.tar.bz2tar -xjf файл
.tartar -xf файл
.gz (один файл, не tar)gunzip файл.gz
.xz (один файл)unxz файл.xz
.zipunzip файл.zip или unzip файл.zip -d папка
.7z7z x файл.7z

Помнить буквы z, J и j не обязательно: при распаковке GNU tar сам узнаёт способ сжатия, и tar -xf файл работает для всех архивов tar.

gunzip и unxz заменяют сжатый файл распакованным, а сам .gz удаляют. Чтобы оставить его, добавьте -k.

Для unzip и 7z может понадобиться установка. В Ubuntu, Debian и Mint: sudo apt install unzip и sudo apt install 7zip (в старых версиях системы — пакет p7zip-full). Если после установки команды 7z нет, попробуйте 7zz x файл.7z.

Подводные камни

Распаковка молча заменяет файлы с теми же именами. Перед распаковкой незнакомого архива посмотрите список (tar -tzf, unzip -l) и распаковывайте в отдельную пустую папку.

Как упаковать папку в архив — в уроке Архивы и сеть: tar, zip, curl, ssh и scp.