Как я могу частично подавить вывод командной строки 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: