zcat или gunzip: продолжить с ошибкой
При попытке заархивировать или распаковать большое количество файлов gzip, zcat/gunzip прекратит работу с этой ошибкой:
gzip: <gzip-file>: unexpected end of file
Можно ли как-нибудь заставить gunzip или zcat продолжить / продолжить в случае ошибки без остановки? Это важно, так как мы ожидаем, что некоторые gzip-файлы будут содержать ошибки, но хотели бы, чтобы наша операция распаковки происходила без остановки и перемещения ошибочных файлов вручную.
1 ответ
Решение
Вы можете использовать скрипт (или функцию) оболочки следующим образом:
function myzcat() {
for file in "$@"; do
zcat -- "$file" 2>/dev/null || true
done
}
....
myzcat corrupted-or-good/*.gz >gunzipped-output.txt