Печатать содержимое одного файла в zip файле

У меня есть несколько файлов zip, которые действительно большие, и я хочу их распечатать без предварительного извлечения. Я использую zcat и zless для этого, а затем перенаправляю вывод в другое приложение. Когда мой файл zip содержит более одного текстового файла, я получаю следующую ошибку:

zcat tweets.zip >a
gzip: tweets.zip has more than one entry--rest ignored

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

Ответ 1

Используйте параметр -p для распаковки для вывода вывода. Несколько файлов объединены. Опция -c делает то же самое, но включает имя файла перед каждым файлом.

Ответ 2

Вы можете сделать это, чтобы вывести файл без извлечения:

$ unzip -p <zip_file> <file_to_print>

Например:

$ unzip -p MyEar.ear META-INF/MANIFEST.MF

Как упоминалось выше, вы также можете перечислить все файлы, используя:

$ unzip -l <zip_file>

Ответ 3

Если вы просто хотите увидеть список файлов в вашем zip-архиве, используйте:

unzip -l tweets.zip

если вы хотите извлечь только какой-то файл:

unzip tweets.zip file-of-interest-as-it-is-pointed-in-the-archive

Если вы хотите что-то еще, не могли бы вы уточнить свой вопрос?