- Как разархивировать файлы в Linux
- Установка unzip
- Установите unzip на Ubuntu и Debian
- Установите unzip на CentOS и Fedora
- Как разархивировать ZIP-файл
- Подавить вывод команды unzip
- Разархивируйте ZIP-файл в другой каталог
- Разархивируйте ZIP-файл, защищенный паролем
- Исключить файлы при распаковке ZIP-файла
- Перезаписать существующие файлы
- Разархивируйте ZIP-файл без перезаписи существующих файлов
- Разархивируйте несколько файлов ZIP
- Список содержимого Zip-файла
- Выводы
- Как распаковать Zip файл в Linux
- Распаковка файла в терминале Linux
- Распаковка в каталог
- Просмотр содержимого zip-файла без его распаковки
- Unzip files in Linux using GUI
Как разархивировать файлы в 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 — это один из самых распространенных и наиболее популярных способов создания сжатых архивных файлов. Это также один из самых старых форматов архивных файлов, он был создан в 1989 году. Поскольку он широко используется, вы будете регулярно сталкиваться с zip-файлами.
В одном из предыдущих уроков я показал, как заархивировать папку в Linux. В этом кратком руководстве для начинающих я покажу вам, как распаковывать файлы в Linux.
Важно: Проверьте, установлен ли у вас unzip.
Для того чтобы распаковать архивный файл, в вашей системе должен быть установлен пакет unzip. Большинство современных дистрибутивов Linux поставляются с поддержкой unzip, но не помешает проверить это, чтобы избежать неприятных сюрпризов в дальнейшем.
В дистрибутивах на базе Ubuntu и Debian для установки unzip можно использовать приведенную ниже команду. Если пакет уже установлен, вы получите уведомление об этом.
После того как вы убедились, что в вашей системе есть поддержка unzip, пришло время распаковать zip-файл в Linux.
Для этого можно использовать как командную строку, так и графический интерфейс, и я покажу вам оба метода.
- Распаковка файлов в терминале Linux
- Распаковка файлов в Ubuntu с помощью графического интерфейса пользователя
Распаковка файла в терминале Linux
Использовать команду unzip в Linux очень просто. В каталоге, где находится zip-файл, используйте такую команду:
Вы также можете указать путь к zip-файлу вместо перехода к каталогу. Вы увидите извлеченные файлы в выводе:
unzip metallic-container.zip -d my_zip Archive: metallic-container.zip inflating: my_zip/625993-PNZP34-678.jpg inflating: my_zip/License free.txt inflating: my_zip/License premium.txt
Существует небольшая проблема с приведенной выше командой. Она извлечет все содержимое zip-файла в текущий каталог. Это не очень красиво, потому что у вас будет горстка файлов, оставляющих текущий каталог неорганизованным.
Распаковка в каталог
Хорошей практикой является распаковка в каталог в командной строке Linux. Таким образом, все извлеченные файлы будут храниться в указанной вами директории. Если каталог не существует, он будет создан.
unzip zipped_file.zip -d unzipped_directory
Теперь все содержимое файла zipped_file.zip будет извлечено в каталог unzipped_directory.
Поскольку мы обсуждаем передовой опыт, еще один совет, который вы можете использовать, — посмотреть на содержимое zip-файла, не распаковывая его.
Просмотр содержимого zip-файла без его распаковки
Вы можете проверить содержимое zip-файла, даже не извлекая его, с помощью опции -l.
unzip -l metallic-container.zip Archive: metallic-container.zip Length Date Time Name --------- ---------- ----- ---- 6576010 2019-03-07 10:30 625993-PNZP34-678.jpg 1462 2019-03-07 13:39 License free.txt 1116 2019-03-07 13:39 License premium.txt --------- ------- 6578588 3 files
Есть много других вариантов использования команды unzip в Linux, но я думаю, что теперь у вас достаточно знаний о том, как распаковывать файлы в Linux.
Unzip files in Linux using GUI
Если вы используете настольный Linux, вам не всегда нужно обращаться к терминалу. Давайте посмотрим, как распаковывать файлы в Ubuntu Linux графически. Я использую рабочий стол GNOME в Ubuntu 18.04, но процесс практически такой же и в других настольных дистрибутивах Linux.
Откройте файловый менеджер и перейдите в папку, где хранится ваш zip-файл. Щелкните файл правой кнопкой мыши, и вы увидите опцию «извлечь здесь». Выберите этот пункт меню.
В отличие от команды unzip, опции «извлечь здесь» создают папку с тем же именем, что и заархивированный файл, и все содержимое заархивированных файлов извлекается в эту вновь созданную папку. Я рад, что это поведение по умолчанию, а не извлечение всего содержимого в текущий каталог.
Также есть опция «извлечь в», с помощью которой вы можете указать папку, в которую хотите извлечь файлы.
Вот и все. Теперь вы знаете, как разархивировать файлы в Linux. Если у вас есть вопросы или предложения, дайте мне знать в разделе комментариев.