Распаковка .zip файла в Linux

У меня есть .zip файл (он содержит несколько файлов, например, file1.txt, file2.txt, file3.txt) в каталоге.

Как я могу извлечь файлы из архива zip в тот же самый каталог? И как я могу создать список всех файлов, извлеченных из архива zip?

Извлеченное имя файла должно быть распечатано как это в названном файле: file_list:

file1.txt
file2.txt
file3.txt
filen.txt

Я попробовал следующую команду, предполагающую, что моим .zip именем файла является "data.zip".

unzip -qoj data.zip | unzip -ql data.zip  > file_list 

Я использовал unzip -qoj data.zip извлечь все файлы в том же каталоге (бесшумно, перезапись, junk_path). Когда я пытаюсь вставить -l с первым разархивировали команду, команда не извлекает файл в текущем каталоге, и только файлы перечислены. Вот почему я должен использовать, разархивировали снова после первого канала. (Если я делаю ошибку здесь, сообщите мне.)

Я получаю следующий вывод:

 Length     Date   Time    Name
 --------    ----   ----    ----
        0  12-21-09 14:25   data/
     6148  12-21-09 14:25   data/.DS_Store
        0  12-21-09 14:25   __MACOSX/
        0  12-21-09 14:25   __MACOSX/data/
       82  12-21-09 14:25   __MACOSX/data/._.DS_Store
       82  12-11-09 13:59   data/file1.txt
      120  12-11-09 13:59   data/file2.txt
      166  12-11-09 13:59   data/file3.txt
 --------                   -------
     6598                   8 files

Как я извлекаю только file1.txt, file2.txt, file3.txt от этого stdout?

Действительно ли возможно сделать это с командой Linux, или я должен записать сценарий жемчуга для этого?

1
задан 12.07.2016, 16:39

1 ответ

unzip data.zip data/file1.txt data/file2.txt data/file3.txt
1
ответ дан 17.12.2019, 00:48

Теги

Похожие вопросы