Я пытаюсь проверить множество zip-файлов, чтобы убедиться, что они содержат нужные каталоги. Я зациклил все zip-файлы, а затем распаковал unzip
и проверил их по одному. Но возникли проблемы с загрузкой процессора и временем. И я считаю, что ситуация была бы лучше, если бы это было сделано без распаковки. Так есть ли какое-либо другое, более эффективное решение для этой работы?
решение1
Не делайте фактическую распаковку (распаковку), просто перечислите содержимое zip-файла. Не уверен, какой именно unzip-бинарный файл вы используете, ноman-страница для unzipесть опция списка:
unzip -l
Изспецификация формата zip-файлапохоже, что затем можно просто перейти к следующей записи, не выполняя распаковку.
решение2
Вы можете использоватьzipinfoдля просмотра содержимого zip-файла без извлечения/распаковки его данных.
решение3
В случаях, когда такие трюки не работают, распакуйте /dev/null
и перенаправьте стандартный вывод в файл. Это не сэкономит вам работу ЦП, но сэкономит вам дисковый ввод-вывод, связанный с фактической записью всех файлов. Перенаправленный стандартный вывод все равно будет содержать распакованные имена файлов.