- Как разархивировать файлы в Linux
- Установка unzip
- Установите unzip на Ubuntu и Debian
- Установите unzip на CentOS и Fedora
- Как разархивировать ZIP-файл
- Подавить вывод команды unzip
- Разархивируйте ZIP-файл в другой каталог
- Разархивируйте ZIP-файл, защищенный паролем
- Исключить файлы при распаковке ZIP-файла
- Перезаписать существующие файлы
- Разархивируйте ZIP-файл без перезаписи существующих файлов
- Разархивируйте несколько файлов ZIP
- Список содержимого Zip-файла
- Выводы
- Как распаковать ZIP в Linux
- Как распаковать ZIP в Linux: основы
- Как переместить один ZIP-файл в нужную папку
- Декомпрессия нескольких файлов
- Разархивируйте файл, но исключайте определенные файлы
- Извлечь Zip-файл в другую папку
- Как показать содержимое сжатого Zip-файла
- Как проверить, является ли Zip-файл действительным
- Показать подробную информацию об сжатом файле
- Декомпрессировать Zip-файл в текущий каталог без создания каталогов
- Извлечение защищенных паролем почтовых файлов
- Как распаковать ZIP в Linux без отображения любого выхода
- Выводы
Как разархивировать файлы в Linux
ZIP — это наиболее широко используемый формат архивных файлов, поддерживающий сжатие данных без потерь. ZIP-файл — это контейнер данных, содержащий один или несколько сжатых файлов или каталогов.
В этом руководстве мы объясним, как разархивировать файлы в системах Linux через командную строку с помощью команды unzip .
Установка unzip
unzip не устанавливается по умолчанию в большинстве дистрибутивов Linux, но вы можете легко установить его с помощью диспетчера пакетов вашего дистрибутива.
Установите unzip на Ubuntu и Debian
Установите unzip на CentOS и Fedora
Как разархивировать ZIP-файл
В простейшей форме, при использовании без какой-либо опции, команда unzip извлекает все файлы из указанного архива ZIP в текущий каталог.
В качестве примера предположим, что вы загрузили установочный ZIP-файл WordPress . Чтобы распаковать этот файл в текущий каталог, вы просто выполните следующую команду:
Файлы ZIP не поддерживают информацию о владельце в стиле Linux. Извлеченные файлы принадлежат пользователю , выполняющему команду.
У вас должны быть права на запись в каталог, в который вы распаковываете ZIP-архив.
Подавить вывод команды unzip
По умолчанию unzip распечатывает имена всех извлекаемых файлов и сводку по завершении извлечения.
Используйте переключатель -q чтобы запретить печать этих сообщений.
Разархивируйте ZIP-файл в другой каталог
Чтобы распаковать ZIP-файл в каталог, отличный от текущего, используйте переключатель -d :
unzip filename.zip -d /path/to/directory
Например, чтобы распаковать архив WordPress latest.zip в latest.zip /var/www/ , вы должны использовать следующую команду:
sudo unzip latest.zip -d /var/www
В приведенной выше команде мы используем sudo потому что обычно пользователь, под которым мы вошли в систему, не имеет прав на запись в каталог /var/www . Когда файлы ZIP распаковываются с помощью sudo , извлеченные файлы и каталоги принадлежат пользователю root.
Разархивируйте ZIP-файл, защищенный паролем
Чтобы распаковать файл, защищенный паролем, вызовите команду unzip с параметром -P за которым следует пароль:
unzip -P PasswOrd filename.zip
Ввод пароля в командной строке небезопасен, и его следует избегать. Более безопасный вариант — обычное извлечение файла без ввода пароля. Если ZIP-файл зашифрован, unzip предложит ввести пароль:
archive: filename.zip [filename.zip] file.txt password:
unzip будет использовать один и тот же пароль для всех зашифрованных файлов, если он правильный.
Исключить файлы при распаковке ZIP-файла
Чтобы исключить определенные файлы или каталоги из извлечения, используйте параметр -x за которым следует список архивных файлов, разделенных пробелами, которые вы хотите исключить из извлечения:
unzip filename.zip -x file1-to-exclude file2-to-exclude
В следующем примере мы извлекаем все файлы и каталоги из ZIP-архива, кроме каталога .git :
Перезаписать существующие файлы
Допустим, вы уже разархивировали ZIP-файл и снова запускаете ту же команду:
По умолчанию unzip спросит вас, хотите ли вы перезаписать только текущий файл, перезаписать все файлы, пропустить извлечение текущего файла, пропустить извлечение всех файлов или переименовать текущий файл.
Archive: latest.zip replace wordpress/xmlrpc.php? [y]es, [n]o, [A]ll, [N]one, [r]ename:
Если вы хотите перезаписать существующие файлы без запроса, используйте параметр -o :
Используйте эту опцию с осторожностью. Если вы внесли какие-либо изменения в файлы, они будут потеряны.
Разархивируйте ZIP-файл без перезаписи существующих файлов
Допустим, вы уже разархивировали ZIP-файл и внесли изменения в некоторые файлы, но случайно удалили несколько файлов. Вы хотите сохранить изменения и восстановить удаленные файлы из ZIP-архива.
В этом случае используйте параметр -n который заставляет unzip чтобы пропустить извлечение уже существующего файла:
Разархивируйте несколько файлов ZIP
Вы можете использовать регулярные выражения для сопоставления нескольких архивов.
Например, если у вас есть несколько файлов ZIP в текущем рабочем каталоге, вы можете распаковать все файлы, используя только одну команду:
Обратите внимание на одинарные кавычки вокруг *.zip . Если вы забыли указать аргумент в кавычках, оболочка расширит подстановочный знак, и вы получите сообщение об ошибке.
Список содержимого Zip-файла
Чтобы просмотреть содержимое ZIP-файла, используйте параметр -l :
В приведенном ниже примере мы перечисляем все установочные файлы WordPress:
Результат будет выглядеть так:
Archive: latest.zip Length Date Time Name --------- ---------- ----- ---- 0 2018-08-02 22:39 wordpress/ 3065 2016-08-31 18:31 wordpress/xmlrpc.php 364 2015-12-19 12:20 wordpress/wp-blog-header.php 7415 2018-03-18 17:13 wordpress/readme.html . . 21323 2018-03-09 01:15 wordpress/wp-admin/themes.php 8353 2017-09-10 18:20 wordpress/wp-admin/options-reading.php 4620 2017-10-24 00:12 wordpress/wp-trackback.php 1889 2018-05-03 00:11 wordpress/wp-comments-post.php --------- ------- 27271400 1648 files
Выводы
unzip — это утилита, которая помогает составлять списки, тестировать и извлекать сжатые архивы ZIP.
Чтобы создать ZIP-архив в системе Linux, вам необходимо использовать команду zip .
Не стесняйтесь оставлять комментарии, если у вас есть вопросы.
Как распаковать ZIP в Linux
Дистрибутивы
В этой статье мы расскажем вам о том, как распаковать ZIP в Linux. И приведем лучшие, практические примеры для команды Unzip в Linux. Давайте начнем.
Как распаковать ZIP в Linux: основы
В предыдущем руководстве мы рассказывали вам практические способы использования команд в «Терминале» для того чтобы быстро сменить пароль в системе.
Эта статья является расширение знакомства с «Терминалом» для этого мы и показываем практические примеры для распаковки файлов с помощью команды unzip Linux.
Как переместить один ZIP-файл в нужную папку
Основной синтаксис для распаковки файла выглядит следующим образом:
Я закрепил альбом под названием «Menace To Sobriety» группы «Ugly Kid Joe» в виде zip-файла под названием «Menace To Sobriety».
Чтобы распаковать этот файл в текущую папку, я могу просто запустить следующую команду:
Декомпрессия нескольких файлов
Команда man заявляет, что вы можете распаковать несколько файлов с помощью следующего синтаксиса:
unzip filename1 filename2 filename3
В качестве примера у меня есть три альбома Alice Cooper под названием «Trash», «Hey Stoopid» и «Dragontown», которые я закрепил в виде отдельных файлов.
Чтобы распаковать эти файлы, все, что мне нужно сделать, это ввести следующее:
unzip « Trash.zip » « Dragontown.zip » «Hey Stoopid.zip «
В действительности, однако, что действительно происходит, когда я запускаю эту команду, я получаю следующую ошибку:
Archive: Trash.zip
caution: filename not matched: Dragontown.zip
Самый простой способ распаковать несколько файлов — использовать вместо этого следующее:
Будьте осторожны, потому что это неизбирательно и будет распаковывать каждый zip-файл в текущей папке.
Разархивируйте файл, но исключайте определенные файлы
Если у вас есть zip-файл, и вы хотите извлечь все файлы, кроме одного, вы можете использовать ключ -x следующим образом:
unzip filename.zip -x filetoexclude.zip
В качестве примера в альбоме «Trash» Элиса Купера есть песня под названием «Bed Of Nails». Если бы я хотел извлечь все песни, кроме «Bed Of Nails», я бы использовал следующий синтаксис:
unzip Trash.zip -x «Bed Of Nails.mp3 «
Извлечь Zip-файл в другую папку
Если вы хотите поместить содержимое zip-файла в другой каталог в текущий, используйте ключ -d следующим образом:
unzip filename.zip -d path/to/extract/to
Например, чтобы распаковать файл «Trash.zip» в / home / music / Alice Cooper / Trash, я бы использовал следующий синтаксис:
unzip Trash.zip -d /home/music/Alice Cooper/Trash
Как показать содержимое сжатого Zip-файла
Чтобы перечислить содержимое сжатого файла, используйте ключ -l:
Чтобы увидеть все песни в альбоме «Trash.zip», все, что мне нужно сделать, это использовать следующий синтаксис:
Возвращенная информация включает в себя:
Как проверить, является ли Zip-файл действительным
Чтобы проверить, нормально ли zip-файл, прежде чем извлекать его, используйте ключ -t.
Например, чтобы проверить, действительно ли «Trash.zip», я буду запускать следующее:
Каждый файл будет указан в файле, а рядом с ним должно появиться слово «ОК». В нижней части вывода должно появиться сообщение с сообщением «об ошибках, обнаруженных в сжатых данных ».
Показать подробную информацию об сжатом файле
Если вы хотите получить более подробную информацию, используйте ключ -v, который выводит более подробную информацию:
Подробный вывод содержит следующую информацию:
- Длина в байтах
- метод
- Размер
- Сжатие%
- Дата и время
- CRC
- Имя
Декомпрессировать Zip-файл в текущий каталог без создания каталогов
Если при создании zip-файла вы добавили папки с этим zip-файлом, тогда стандартная команда unzip воссоздает структуру папок, поскольку она распакована.
Например, если у меня есть zip-файл с именем filename1.zip со следующей структурой и извлеките его, папки будут воссозданы, когда я разархивирую его:
- Папка 1 — filea.txt, fileb.txt, filec.txt
- Папка 2 — filed.txt, filee.txt
- Папка 3 — filef.txt
Если бы я хотел, чтобы все .txt-файлы извлекались в текущую папку без воссозданных папок, я бы использовал ключ -j следующим образом:
Декомпретируйте файл без запроса, когда уже существуют файлы
Представьте, что у вас есть zip-файл, который вы уже расстегнули, и вы начали работать над файлами, которые вы извлекли.
Если у вас есть другой файл, который вы хотите разархивировать, если этот zip-файл содержит файлы, которые уже существуют в том месте, где они должны быть извлечены, перед их перезаписью отображается предупреждение.
Это нормально, но если вы извлекаете файл с 1000 файлами в нем, вы не хотите получать подсказки каждый раз.
Если вы не хотите перезаписывать уже существующие файлы, вы можете поставить ключ -n следующим образом:
Если вам все равно, существует ли файл, и вы всегда хотите перезаписать файлы по мере их извлечения, без запроса использования ключа -o следующим образом:
Извлечение защищенных паролем почтовых файлов
Если вам нужно разархивировать файл, для которого требуется пароль для доступа, используйте ключ -P, за которым следует пароль
Например, чтобы распаковать файл cats.zip с паролем kittens123, используйте следующее:
Как распаковать ZIP в Linux без отображения любого выхода
По умолчанию команда unzip перечисляет все, что она делает, включая список всех файлов в архиве по мере его извлечения.
Вы можете подавить этот выход, используя ключ -q:
Это распаковывает имя файла без предоставления какого-либо результата и возвращает его курсору, когда он будет завершен.
Выводы
Есть буквально десятки других доступных коммутаторов, и вы можете использовать страницы руководства Linux, чтобы узнать, что они собой представляют.
Если у вас есть какие-то вопросы по теме «Как распаковать ZIP в Linux» — пишите их нам в форму комментариев. Мы постараемся вам помочь в вашем вопросе.
Также, если статья была полезной то, обязательно поделитесь ссылкой на нее в социальные сети Facebook, Google+, Twitter, ВКонтакте или, например, Одноклассники. Это очень поможет развивать наше сообщество.