Linux zip извлечь файл

Как распаковать ZIP в Linux

В операционной системе Windows формат архивов ZIP считается чуть ли не стандартным, он даже поддерживается в этой операционной системе, что называется «из коробки». Если вы только перешли с Windows, то у вас, наверное, есть много таких архивов с различными файлами, также ZIP-архивы могут часто попадаться на просторах интернета. Поэтому работать с такими файлами в Linux вам однозначно придётся.

В этой небольшой статье мы рассмотрим, как распаковать ZIP Linux. Разберём несколько способов и воспользуемся несколькими утилитами, которые справятся с этой задачей.

Распаковка ZIP Linux

Формат ZIP был создан в 1989 году на замену очень медленному формату ARC. Здесь используется сжатие deflate, и на то время оно работало намного быстрее чем ARC. Исторически сложилось так, что стандартным форматом для Linux стали TAR и GZ — это усовершенствованные алгоритмы сжатия и архивации. Многие графические распаковки воспринимают и ZIP-файлы. Но они обрабатывают архивы не сами, а дают команду предназначенным для этого формата утилитам.

Утилита для распаковки ZIP называется unzip, она не всегда установлена по умолчанию. Но вы можете очень просто добавить её в свою систему из официальных репозиториев. Для этого в Ubuntu выполните:

А в системах, использующих формат пакетов 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 — выводить минимум информации.
Читайте также:  Linux mint оболочка mac

Все самые основные опции рассмотрели, теперь давайте рассмотрим несколько примеров работы с программой в терминале. Чтобы распаковать ZIP Linux в текущую папку, достаточно набрать:

zip3

Причём расширение указывать не обязательно. Протестировать архив можно с помощью опции -t:

zip1

Вы можете протестировать все архивы в текущей папке, выполнив:

Если нужно распаковывать архив не в текущую папку, можно очень просто указать нужную:

zip4

Также можно распаковывать не весь архив, а только нужные файлы или файлы нужного формата:

unzip имя_файла.zip \*.txt -d /tmp

С помощью опции -l вы можете посмотреть список файлов в архиве:

zip

Утилиту unzip разобрали и теперь вы с ней точно справитесь. Но я говорил, что мы рассмотрим несколько способов, как выполняется распаковка ZIP Linux. Поэтому дальше мы поговорим об утилите 7z.

Демонстрация работы утилит zip и unzip в терминале:

Как распаковать ZIP Linux с помощью 7z

7z — это кроссплатформенный набор утилит для работы с архивами. Кроме собственного формата, здесь поддерживается большое количество других, в том числе tar и zip. Плюс этой утилиты — в контекстное меню файлового менеджера будет добавлен пункт, с помощью которого вы сможете распаковывать или создавать архивы.

Для установки утилиты в Ubuntu или Debian выполните:

sudo apt install p7zip-full

Теперь вы можете использовать контекстное меню вашего файлового менеджера, чтобы распаковать архив ZIP Linux. Также можно использовать программу в консоли. Синтаксис очень похож на unzip:

$ 7z команда опции имя_архива

Команда задаёт нужное действие. Нас будут интересовать только четыре команды:

Теперь рассмотрим самые полезные опции:

  • -o — указать папку для распаковки;
  • -p — указать пароль;
  • -x — не извлекать эти файлы;
  • -w — указать рабочую директорию;
  • -y — отвечать положительно на все вопросы;

Ну и рассмотрим примеры работы с утилитой. Сначала проверим содержимое архива:

zip5

Распаковываем архив, сохраняя структуру подкаталогов:

zip6

Или распаковываем все файлы в одну папку, игнорируя подкаталоги:

Или вы можете указать папку, в которую нужно распаковать файлы с помощью опции -o:

Выводы

В этой статье была рассмотрена распаковка ZIP Linux, как видите, это ненамного сложнее, чем распаковка стандартных архивов TAR. Мы рассмотрели два способа ,и теперь вы точно будете знать, что делать, когда столкнетесь с такой ситуацией. Если у вас остались вопросы, спрашивайте в комментариях!

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Читайте также:  Linux process status file

Источник

Как распаковать ZIP в Linux

Как распаковать 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», я буду запускать следующее:

Читайте также:  Узнать ip компа linux

Каждый файл будет указан в файле, а рядом с ним должно появиться слово «ОК». В нижней части вывода должно появиться сообщение с сообщением «об ошибках, обнаруженных в сжатых данных ».

Показать подробную информацию об сжатом файле

Если вы хотите получить более подробную информацию, используйте ключ -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, ВКонтакте или, например, Одноклассники. Это очень поможет развивать наше сообщество.

Источник

Оцените статью
Adblock
detector