如何部分抑制 zip 的命令行输出?

如何部分抑制 zip 的命令行输出?

背景:我有一个 python 脚本,它可以生成一堆图像(png 格式,至少几百张),运行 ffmpeg 将它们转换成一个短视频,然后将所有图像放入 zip 存档中,这样如果我发现任何奇怪或有趣的东西,我可以回去获取单独的帧。

问题:最初 zip 部分内容为,zip -q -T -m output *.png但被抑制了全部updating: Stars0053.png (deflated 5%)输出,包括文件是否正常的声明。有没有办法在不抑制交换机输出的情况下抑制大量的-T

答案1

zip -q -T -m output *.png  && echo "success" || echo "failure"

也应该有效,作为评论中给出的解决方案的替代。

它的工作原理如下:如果第一个命令 (zip ...) 成功,则以下带有 && 的组合也会成功并执行。但如果第一部分失败,则整个组合将失败,并且 && 部分将被跳过,但如果两个命令之一成功,则或组合成功,因此 || 部分将执行。

您对组合结果(真/假)不感兴趣,但对副作用感兴趣:状态反馈。

答案2

或者,您可以使用 Python 自己的 zip 库:

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

相关内容