我使用以下命令查找文件,将其压缩并删除原始文件:
find data/* -type f -execdir zip '{}'.zip '{}' \; -delete
目前,如果找到名为“something.txt”的文件,则会创建名为“something.txt.zip”的zip文件。如何将文件名设为“something.zip”?
我知道在bash中我可以做类似$ {x:。*}的事情,但我似乎无法在这里工作。
答案 0 :(得分:0)
这似乎有效,但有点软糊一地:
find data/* -execdir bash -c 'zip -j "${1%.*}.zip" "${1}"' _ {} \;
我希望看到更清洁的东西。