Как я могу частично подавить вывод командной строки zip?

Предыстория: у меня есть скрипт на python, который генерирует кучу изображений (формат png, минимум несколько сотен), запускает ffmpeg, чтобы превратить их в короткое видео, а затем помещает все изображения в zip-архив, чтобы я мог вернуться назад если я найду какие-то странные или интересные вещи, где я хочу индивидуальный кадр.

Проблема: Первоначально часть почтового индекса читалась как zip -q -T -m output *.png но это подавило весь вывод, включая утверждение о том, что файл в порядке. Есть ли способ подавить большое количество updating: Stars0053.png (deflated 5%) без подавления выхода -T выключатель?

2 ответа

Решение
zip -q -T -m output *.png  && echo "success" || echo "failure"

должно работать тоже, альтернатива решению, приведенному в комментариях.

Это работает следующим образом: если первая команда (zip ...) выполнена успешно, следующая комбинация с && также может быть успешной и выполняется. Но если первая часть терпит неудачу, тогда вся комбинация будет неудачной, и часть &&- будет пропущена, но комбинация or будет успешной, если один из них успешен, поэтому выполняется ||-part.

Вас интересует не комбинированный результат (true/false), а побочный эффект: обратная связь о состоянии.

В качестве альтернативы вы можете использовать собственную zip-библиотеку pythons:

http://docs.python.org/library/zipfile.html

Другие вопросы по тегам