- Как распаковать Zip-архив в Linux
- How to Unzip Files in Linux
- В этом руководстве мы объясним, как разархивировать файлы в системах Linux через командную строку с помощью unzip команды.
- Установка unzip
- Установить unzip на Ubuntu и Debian
- Установить unzip на CentOS и Fedora
- Как распаковать ZIP файл
- Подавить вывод unzip команды
- Распакуйте ZIP-файл в другой каталог
- Распакуйте ZIP-файл, защищенный паролем
- Исключить файлы при распаковке ZIP-файла
- Перезаписать существующие файлы
- Распакуйте ZIP-файл без перезаписи существующих файлов
- Распакуйте несколько ZIP-файлов
- Перечислите содержимое файла Zip
- Вывод
- Как распаковать ZIP в Linux
- Распаковка ZIP Linux
- Как распаковать ZIP Linux с помощью 7z
- Выводы
- How to Unzip a Zip File in Linux [Beginner’s Tutorial]
- Unzip file in Linux command line
- Unzip to directory
- See the content of zip file without unzipping it
- Unzip files in Linux using GUI
Как распаковать Zip-архив в Linux
How to Unzip Files in Linux
В этом руководстве мы объясним, как разархивировать файлы в системах Linux через командную строку с помощью unzip команды.
ZIP является наиболее широко используемым форматом архивных файлов, который поддерживает сжатие данных без потерь. ZIP-файл — это контейнер данных, содержащий один или несколько сжатых файлов или каталогов.
Установка unzip
unzip не устанавливается по умолчанию в большинстве дистрибутивов Linux, но вы можете легко установить его, используя менеджер пакетов вашего дистрибутива.
Установить unzip на Ubuntu и Debian
Установить unzip на CentOS и Fedora
Как распаковать ZIP файл
В простейшем случае unzip команда без каких-либо параметров извлекает все файлы из указанного ZIP-архива в текущий каталог.
В качестве примера, скажем, вы загрузили установочный ZIP-файл WordPress . Чтобы разархивировать этот файл в текущий каталог, вам нужно просто выполнить следующую команду:
ZIP-файлы не поддерживают информацию о владельце в стиле Linux. Извлеченные файлы принадлежат пользователю, который запускает команду.
У вас должны быть права на запись в каталог, в который вы распаковываете ZIP-архив.
Подавить вывод unzip команды
По умолчанию unzip печатает имена всех извлекаемых файлов и сводные данные, когда извлечение завершено.
Используйте -q переключатель, чтобы подавить печать этих сообщений.
Распакуйте ZIP-файл в другой каталог
Чтобы разархивировать ZIP-файл в каталог, отличный от текущего, используйте -d переключатель:
Например, чтобы разархивировать архив WordPress latest.zip в /var/www/ каталог, вы должны использовать следующую команду:
В приведенной выше команде мы используем, sudo потому что обычно пользователь, в который мы вошли, не имеет разрешения на запись в /var/www каталог. Когда файлы ZIP распаковываются с использованием sudo , извлеченные файлы и каталоги принадлежат пользователю root.
Распакуйте ZIP-файл, защищенный паролем
Чтобы разархивировать файл, защищенный паролем, вызовите unzip команду с -P параметром, за которым следует пароль:
Ввод пароля в командной строке небезопасен и его следует избегать. Более безопасным вариантом является обычное извлечение файла без указания пароля. Если файл ZIP зашифрован, unzip вам будет предложено ввести пароль:
unzip будет использовать один и тот же пароль для всех зашифрованных файлов, если он правильный.
Исключить файлы при распаковке ZIP-файла
Чтобы исключить извлечение определенных файлов или каталогов, используйте -x параметр, за которым следует разделенный пробелами список архивных файлов, которые вы хотите исключить из извлечения:
В следующем примере мы извлекаем все файлы и каталоги из архива ZIP, кроме .git каталога:
Перезаписать существующие файлы
Допустим, вы уже распаковали ZIP-файл и снова запускаете ту же команду:
По умолчанию unzip вас спросят, хотите ли вы перезаписать только текущий файл, перезаписать все файлы, пропустить извлечение текущего файла, пропустить извлечение всех файлов или переименовать текущий файл.
Если вы хотите перезаписать существующие файлы без запроса, используйте -o параметр:
Используйте эту опцию с осторожностью. Если вы внесли какие-либо изменения в файлы, изменения будут потеряны.
Распакуйте ZIP-файл без перезаписи существующих файлов
Допустим, вы уже распаковали ZIP-файл и внесли изменения в некоторые файлы, но случайно удалили несколько файлов. Вы хотите сохранить изменения и восстановить удаленные файлы из архива ZIP.
В этом случае используйте -n параметр, который заставляет unzip пропустить извлечение файла, который уже существует:
Распакуйте несколько ZIP-файлов
Вы можете использовать регулярные выражения для сопоставления нескольких архивов.
Например, если у вас есть несколько ZIP-файлов в вашем текущем рабочем каталоге, вы можете разархивировать все файлы, используя только одну команду:
Обратите внимание на одинарные кавычки *.zip . Если вы забыли процитировать аргумент, оболочка расширит символ подстановки, и вы получите ошибку.
Перечислите содержимое файла Zip
Чтобы просмотреть содержимое файла ZIP, используйте -l параметр:
В приведенном ниже примере мы перечисляем все установочные файлы WordPress:
Вывод будет выглядеть так:
Вывод
unzip это утилита, которая помогает вам составлять список, тестировать и извлекать сжатые ZIP-архивы.
Чтобы создать ZIP-архив в системе Linux, вам нужно использовать команду zip .
В этом руководстве мы объясним, как разархивировать файлы в системах Linux через командную строку с помощью unzip команды.
Источник
Как распаковать ZIP в Linux
В операционной системе Windows формат архивов ZIP считается чуть ли не стандартным, он даже поддерживается в этой операционной системе, что называется «из коробки». Если вы только перешли с Windows, то у вас, наверное, есть много таких архивов с различными файлами, также ZIP-архивы могут часто попадаться на просторах интернета. Поэтому работать с такими файлами в Linux вам однозначно придётся.
В этой небольшой статье мы рассмотрим, как распаковать ZIP Linux. Разберём несколько способов и воспользуемся несколькими утилитами, которые справятся с этой задачей.
Распаковка ZIP Linux
Формат ZIP был создан в 1989 году на замену очень медленному формату ARC. Здесь используется сжатие deflate, и на то время оно работало намного быстрее чем ARC. Исторически сложилось так, что стандартным форматом для Linux стали TAR и GZ — это усовершенствованные алгоритмы сжатия и архивации. Многие графические распаковки воспринимают и ZIP-файлы. Но они обрабатывают архивы не сами, а дают команду предназначенным для этого формата утилитам.
Утилита для распаковки ZIP называется unzip, она не всегда установлена по умолчанию. Но вы можете очень просто добавить её в свою систему из официальных репозиториев. Для этого в Ubuntu выполните:
sudo apt install unzip
А в системах, использующих формат пакетов Red Hat, команда будет выглядеть немного по-другому:
sudo yum install unzip zip
После установки большинство графических утилит для работы с архивами смогут распаковать архив ZIP Linux. Команда ZIP Linux установлена на случай, если вы захотите создавать ZIP-архивы.
Но этой утилите не нужны дополнительные оболочки для распаковки архива. Вы можете сделать всё прямо из консоли. Давайте рассмотрим синтаксис утилиты:
$ unzip опции файл_архива.zip файлы -x исключить -d папка
- файл архива — это тот файл, с которым нам предстоит работать;
- файлы — здесь вы можете указать файлы, которые нужно извлечь, разделять имена файлов пробелом;
- исключить — файлы, которые извлекать не нужно;
- папка — папка, в которую будет распакован архив.
Теперь рассмотрим опции утилиты, поскольку она позволяет не только распаковывать архивы, но и выполнять с ними определённые действия:
- -l — вывести список файлов в архиве;
- -t — протестировать файл архива на ошибки;
- -u — обновить существующие файлы на диске;
- -z — вывести комментарий к архиву;
- -c — извлекать файлы на стандартный вывод, перед каждым файлом будет выводиться его имя;
- -p — то же самое, только имя выводится не будет;
- -f — извлечь только те файлы, которые уже существуют на диске, и файлы в архиве более новые;
- -v — вывести всю доступную информацию;
- -P — указать пароль для расшифровки архива;
- -n — не перезаписывать существующие файлы;
- -j — игнорировать структуру архива и распаковать всё в текущую папку;
- -q — выводить минимум информации.
Все самые основные опции рассмотрели, теперь давайте рассмотрим несколько примеров работы с программой в терминале. Чтобы распаковать ZIP Linux в текущую папку, достаточно набрать:
Причём расширение указывать не обязательно. Протестировать архив можно с помощью опции -t:
unzip -tq имя_файла.zip
Вы можете протестировать все архивы в текущей папке, выполнив:
Если нужно распаковывать архив не в текущую папку, можно очень просто указать нужную:
unzip имя_файла.zip -d /tmp
Также можно распаковывать не весь архив, а только нужные файлы или файлы нужного формата:
unzip имя_файла.zip \*.txt -d /tmp
С помощью опции -l вы можете посмотреть список файлов в архиве:
unzip -l file.zip
Утилиту unzip разобрали и теперь вы с ней точно справитесь. Но я говорил, что мы рассмотрим несколько способов, как выполняется распаковка ZIP Linux. Поэтому дальше мы поговорим об утилите 7z.
Демонстрация работы утилит zip и unzip в терминале:
Как распаковать ZIP Linux с помощью 7z
7z — это кроссплатформенный набор утилит для работы с архивами. Кроме собственного формата, здесь поддерживается большое количество других, в том числе tar и zip. Плюс этой утилиты — в контекстное меню файлового менеджера будет добавлен пункт, с помощью которого вы сможете распаковывать или создавать архивы.
Для установки утилиты в Ubuntu или Debian выполните:
sudo apt install p7zip-full
А в Red Hat и CentOS:
sudo yum install p7zip
Теперь вы можете использовать контекстное меню вашего файлового менеджера, чтобы распаковать архив ZIP Linux. Также можно использовать программу в консоли. Синтаксис очень похож на unzip:
$ 7z команда опции имя_архива
Команда задаёт нужное действие. Нас будут интересовать только четыре команды:
- e (Extract) — извлечь файлы из архива;
- x eXtract — извлечь файлы из архива, сохраняя полный путь;
- l (List) — список файлов архива;
- t (Test) — проверить архив.
Теперь рассмотрим самые полезные опции:
- -o — указать папку для распаковки;
- -p — указать пароль;
- -x — не извлекать эти файлы;
- -w — указать рабочую директорию;
- -y — отвечать положительно на все вопросы;
Ну и рассмотрим примеры работы с утилитой. Сначала проверим содержимое архива:
Распаковываем архив, сохраняя структуру подкаталогов:
Или распаковываем все файлы в одну папку, игнорируя подкаталоги:
Или вы можете указать папку, в которую нужно распаковать файлы с помощью опции -o:
7z x файл.zip -o /tmp/
Выводы
В этой статье была рассмотрена распаковка ZIP Linux, как видите, это ненамного сложнее, чем распаковка стандартных архивов TAR. Мы рассмотрели два способа ,и теперь вы точно будете знать, что делать, когда столкнетесь с такой ситуацией. Если у вас остались вопросы, спрашивайте в комментариях!
Источник
How to Unzip a Zip File in Linux [Beginner’s Tutorial]
Last updated October 9, 2019 By Abhishek Prakash 9 Comments
Brief: This quick tip shows you how to unzip a file in Ubuntu and other Linux distributions. Both terminal and GUI methods have been discussed.
Zip is one of the most common and most popular way to create compressed archive files. It is also one of the older archive file format that was created in 1989. Since it is widely used, you’ll regularly come across a zip file.
In an earlier tutorial, I showed how to zip a folder in Linux. In this quick tutorial for beginner’s, I’ll show you how to unzip files in Linux.
Prerequisite: Verify if you have unzip installed
In order to unzip a zip archive file, you must have the unzip package installed in your system. Most modern Linux distributions come with uzip support but there is no harm in verifying it to avoid bad surprises later.
In Ubuntu and Debian based distributions, you can use the command below to install unzip. If it’s already installed, you’ll be notified about it.
Once you have made sure that your system has unzip support, it’s time to unzip a zip file in Linux.
You can use both command line and GUI for this purpose and I’ll show you both methods.
Unzip file in Linux command line
Using unzip command in Linux is absolutely simple. In the directory, where you have the zip file, use this command:
You can also provide the path to the zip file instead of going to the directory. You’ll see extracted files in the output:
There is a slight problem with the above command. It will extract all the contents of the zip file in the current directory. That’s not a pretty thing to do because you’ll have a handful of files leaving the current directory unorganized.
Unzip to directory
A good practice is to unzip to directory in Linux command line. This way, all the extracted files are stored in the directory you specified. If the directory doesn’t exist, it will create one.
Now all the contents of the zipped_file.zip will be extracted to unzipped_directory.
Since we are discussing good practices, another tip you can use is to have a look at the content of the zip file without actually extracting it.
See the content of zip file without unzipping it
You can check the content of the zip file without even extracting it with the option -l.
Here’s a sample output:
There are many other usage of the unzip command in Linux but I guess now you have enough knowledge to unzip files in Linux.
Unzip files in Linux using GUI
You don’t always have to go to the terminal if you are using desktop Linux. Let’s see how to unzip in Ubuntu Linux graphically. I am using GNOME desktop here with Ubuntu 18.04 but the process is pretty much the same in other desktop Linux distributions.
Open the file manager and go to the folder where your zip file is stored. Right click the file and you’ll see the option “extract here”. Select this one.
Unlike the unzip command, the extract here options create a folder of the same name as the zipped file and all the content of the zipped files are extracted to this newly created folder. I am glad that this is the default behavior instead of extracting everything in the current directory.
There is also the option of ‘extract to’ and with that you can specify the folder where you want to extract the files.
That’s it. Now you know how to unzip a file in Linux. Perhaps you might also be interested in learning about using 7zip in Linux.
If you have questions or suggestions, do let me know in the comment section.
Like what you read? Please share it with others.
Источник