Распаковать zip linux terminal

Practical Examples of the Unzip Command in Linux

Got a zip file in the terminal? Learn how to use the unzip command in Linux with these practical examples.

If you have a zip compressed file, you can unzip it in the Linux command line. The unzip command in Linux is quite versatile and you can use it do a lot more than just extracting zip file.

I have discussed how to gzip a folder in Linux in the past. It’s time to see various usage of the unzip command. Before you do that, make sure that unzip has been installed on your system. You can use your distribution’s package manager to install the command.

On Ubuntu and Debian, you can use this command:

Once you have verified that, let’s see how to use unzip in Linux terminal.

Unzip command in Linux

The unzip command has a really simple syntax:

If you use it to extract a zip file without any option, it will extract all the files in the current directory:

unzip webdesign.zip Archive: webdesign.zip inflating: 339252-PAJF05-394.ai inflating: 339252-PAJF07-322.eps inflating: 339252-PALBTI-224.ai inflating: 339252-PALBTL-394.eps inflating: 339252-PALBTM-53.jpg inflating: License free.txt inflating: License premium.txt

And that’s not what you would want most of the time. It’ll just flood your current directory with all the extracted files.

ls 339252-PAJF05-394.ai 339252-PALBTI-224.ai 339252-PALBTM-53.jpg 'License premium.txt' 339252-PAJF07-322.eps 339252-PALBTL-394.eps 'License free.txt' webdesign.zip

1. Unzip to a directory

The expected behavior is that you should have the files extracted to a certain directory, normally with the same name as the zip file.

You can specify the target directory where you want to extract the files.

unzip -d target_directory zip_file

If the target directory doesn’t exist, it will be created. You cannot create nested directories in this manner though.

Do note that you can also put the target directory at the end but not all options can be added at the end.

unzip zip_file -d target_directory

2. See the content of the zip file without extracting

If you want to see what the zip file contains, you son’t always have to extract it first. You can use the -l option and it will show the content of the zip file.

Читайте также:  Линукс для acer aspire 5315

As you can see, it also shows the timestamp of the files and the actual size of the individual files in bytes.

[email protected]:$ unzip -l webdesign.zip Archive: webdesign.zip Length Date Time Name --------- ---------- ----- ---- 205358 2018-06-18 23:14 339252-PAJF05-394.ai 996906 2018-06-18 23:14 339252-PAJF07-322.eps 213968 2018-06-20 00:00 339252-PALBTI-224.ai 1005362 2018-06-20 00:00 339252-PALBTL-394.eps 305531 2018-06-20 00:00 339252-PALBTM-53.jpg 1462 2018-06-20 09:45 License free.txt 1116 2018-06-20 09:45 License premium.txt --------- ------- 2729703 7 files

If you want, you can get more information like the compressed size, compression ratio by using the verbose mode with -v option. The CRC-32 in the output is the cyclic redundancy check.

[email protected]:$ unzip -v webdesign.zip Archive: webdesign.zip Length Method Size Cmpr Date Time CRC-32 Name -------- ------ ------- ---- ---------- ----- -------- ---- 205358 Defl:N 142097 31% 2018-06-18 23:14 792f2380 339252-PAJF05-394.ai 996906 Defl:N 221228 78% 2018-06-18 23:14 440390d3 339252-PAJF07-322.eps 213968 Defl:N 147568 31% 2018-06-20 00:00 cdb64dfc 339252-PALBTI-224.ai 1005362 Defl:N 226727 77% 2018-06-20 00:00 aed3d97a 339252-PALBTL-394.eps 305531 Defl:N 183363 40% 2018-06-20 00:00 e4ced90f 339252-PALBTM-53.jpg 1462 Defl:N 728 50% 2018-06-20 09:45 0eb9e17b License free.txt 1116 Defl:N 558 50% 2018-06-20 09:45 165dd84e License premium.txt -------- ------- --- ------- 2729703 922269 66% 7 files

3. Overwrite all the files without prompting

If there are already files with the same name in the directory where you are extracting the files, you’ll be promoted for each such files. You can force overwrite all the files with option -o .

unzip -o -d target_directory zip_file

4. Do not overwrite any files -n

If you don’t want any existing file to be overwritten by newly extracted files, use the -n option (stands for never overwrite).

unzip -n -d target_directory zip_file

5. Update files and create if necessary

This is slightly different the overwriting all the files. In this case, only those files will will be overwritten that have newer timestamp than the existing files. If a file doesn’t exist, it will be created.

You can achieve that with option -u:

unzip -u -d target_directory zip_file

6. Freshen existing files but create none

Slight change from the previous example here. In this one, it will update the existing files if they have older timestamp but it won’t create any new files even if they don’ exist.

The option -f allows you to do that:

unzip -f -d target_directory zip_file

7. Extract in quiet mode

When you unzip a file, it shows all the files that have been extracted on the display. Now imagine a zip file that has hundreds of files in it. If you extract it, your screen will be cluttered with the output.

You can use the quiet mode with option -q and you won’t see anything on the display:

unzip -q -d target_directory zip_file

8. Exclude files from extraction

You can also exclude certain files or certain type of files from being extracted.

unzip zip_file -x file_to_exclude

In my example, let’s say I don’t want to extract any .eps files.

[email protected]:$ unzip webdesign.zip -x *.eps Archive: webdesign.zip inflating: 339252-PAJF05-394.ai inflating: 339252-PALBTI-224.ai inflating: 339252-PALBTM-53.jpg inflating: License free.txt inflating: License premium.txt

Those were some of the most common examples of the unzip command in Linux. You can always check its man page to learn about more options.

Читайте также:  Linux daemon and service

Do you use some other option with unzip frequently? Why not share it with us in the comments?

Источник

Как распаковать 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», все, что мне нужно сделать, это использовать следующий синтаксис:

Читайте также:  Hardware acceleration nvidia linux

Возвращенная информация включает в себя:

Как проверить, является ли 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, ВКонтакте или, например, Одноклассники. Это очень поможет развивать наше сообщество.

Источник

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