我正在尝试从多个zip存档中删除具有特定扩展名的文件。
例如,我想删除当前路径中zip归档文件中包含的所有.html文件,因此我尝试了以下操作: zip -d *.zip '*.html'
这适用于找到的第一个zip,但不会继续进行。关于如何在OSX上执行此操作的任何建议?
问题在于,在*.zip
将其传递给zip
命令之前,它将扩展到所有ZIP文件。
而是通过一个简单的循环来执行此操作:
for f in *.zip; do zip -d "$f" '*.html'; done
如果您有Zsh,则这种循环会短一些:
for f (*.zip) zip -d "$f" '*.html'
如果要使用标准OS X工具递归到子文件夹,请使用find
:
find /path/to/files -type f -name '*.zip' -exec zip -d {} '*.html' \;
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句