- Как разархивировать файлы в Linux
- Установка unzip
- Установите unzip на Ubuntu и Debian
- Установите unzip на CentOS и Fedora
- Как разархивировать ZIP-файл
- Подавить вывод команды unzip
- Разархивируйте ZIP-файл в другой каталог
- Разархивируйте ZIP-файл, защищенный паролем
- Исключить файлы при распаковке ZIP-файла
- Перезаписать существующие файлы
- Разархивируйте ZIP-файл без перезаписи существующих файлов
- Разархивируйте несколько файлов ZIP
- Список содержимого Zip-файла
- Выводы
- Работа с ZIP архивом в Linux
- Установка программы Zip в Linux
- Творение ZIP архива в Linux
- Распаковать zip архив в Linux
- Просмотр охватываемого 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 — это звезда в мире ПО (ну не считая rar) этот формат очень популярен для windows систем и он по умолчанию уже встроен в незапятнанную сборку операционной системы, поэтому только установив виндовус вы уже можете разархивировать файлы в формате zip. Когда вы установите unzip, все утилиты для работы с архивами смогут без проблем распаковать архив zip.
Установка программы Zip в Linux
Рассмотрим на примере Debian или Ubuntu
Чтобы создать ваш первоначальный архив в формате zip используйте команду zip — первый аргумент это название архива, второй это файл или компданные через пробел, которые будут добавлены в архив:
zip archive.zip file1.txt file2.log
Как добавить в картотека zip папку с файлами:
Установить пароль на архив можно с помощью ключа -P, а ключ -e утаит пароль при вводе :
Для распаковки архивов Zip используйте команду unzip, можно использовать её без каких-нибудь опций, распаковка в таком случае будет произведена в текущую директорию:
Применяйте ключ -d для указания директории, куда нужно распаковать архив:
Посмотреть компданные в архиве без распаковки можно с ключом -l :
Как распаковать определённые файлы из архива? Зачислите их через пробел:
unzip archive.zip 1.txt 2.txt
Пример создания архива. Заархивируем все файлы и папки в папки /var/log/ и директорию /var/spool/:
zip -r -9 test-archive.zip /var/log/* /var/spool/* -x «/var/log/apt/*»
-r — архивировать рекурсивно
-9 — степень сжатия от 1 до 9. 0 — без стягивания.
test-archive.zip — имя архива
/var/log/* /var/spool/* — архивируемые директории через пробел
-x «/var/log/apt/*» — опция, дозволяющая исключить указанную папку или файл из архива
-e — опция, позволяющая задать пароль на архив
Творение ZIP архива в Linux
Для начала запомним шаблон или синтаксис команды для создания архива zip в linux:
zip [функции] [файлы или папки которые будем упаковывать]
Опции для создания архива tar:
r (recurse) — общерекурсивное создание архива
s (size) — разбивка архива на определенный размер k (kB), m (MB), g (GB) или t (TB)
пример: zip -s 300m
на выводе получим:
file.zip (300 mb, master file)
file.001.zip (300 mb)
file.002.zip (300 mb)
file.003.zip (100 mb)
P (password) — запаролировать картотека (можно использовать ключ e тогда пароль будете вводить в отдельной строке со звездочками )
образчик: zip -P мойпароль -r file.zip ./home/nibbl/foto
пример2: zip -er file.zip ./home/nibbl/foto
x — ликвидируем файлы или каталоги из архива
1-9 — степень сжатия (где 1 без сжатия, а 9 лучшее сжатие)
zip –r -9 -P 123 — archive.zip /home/nibbl/desktop/myfile
— этой командой мы заархивировали с сжатием папку myfile создали архив с именем archive.zip и установили пароль на картотека 123
Распаковать zip архив в Linux
Далее мы затронем две свободных популярных утилиты, управление которыми исполняется через консоль, то есть пользователю придется вводить встроенные и дополнительные команды для управления абсолютно всеми файлами и инструментами. Примером сегодня выступит дистрибутив Ubuntu, а для обладателей других сборок мы делаем акценты на каких-либо несовпадениях. Рассмотрим синтаксис команды что бы распаковать или разархивировать tar архив:
Функции для создания архива tar:
d (directory) — указать директорию для разархивации
l — вывести список файлов в картотеке
d — удалить определенный файл или каталог из уже сделанного архива
v — показывает детальную информацию по файлам в картотеке ()
unzip — распаковываем архив в категорию в которой находимся
unzip -d /home/nibbl/desktop — распаковываем картотека на рабочий стол
Общая информация по работе с Zip в Linux
zip —help или unzip —help — вызов ссылки по командам и параметрам
man zip или man unzip — вызов расширенной документации официальная документация по команде zip — ссылка
Просмотр охватываемого zip архива в Linux
Вы можете проверить содержимое 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 премиум.txt
——— ——-
6578588 3 files
Существует множество других способов использования команды распаковки в Linux, но, думаю, теперь у вас достаточно знаний для распаковки архивов в Linux. Теперь вы знаете, как распаковать файл в Linux.