Bash
缺少 find -exec 的參數
我想使用 find 和 -exec 刪除某些文件。但不太可能 bash 告訴我,我“缺少”一些論點。
find . -name *.png -exec rm {} /;
我想念什麼?
我嘗試重命名某些文件時返回相同的“缺少參數”:
find . -name ic_launcher.png -exec mv {} other_name.png /;
有人可以告訴我,bash 錯過了什麼,為什麼這個命令不成功?
最後的分號需要被引用或轉義,以便將其傳遞給
find
而不是由 shell 解釋。find . -name ic_launcher.png -exec mv '{}' other_name.png ';'
要麼
find . -name ic_launcher.png -exec mv '{}' other_name.png \;
應該做你想做的事。
像下面的例子一樣使用管道:
找 。-name ‘垃圾郵件-*’ | xargs rm