web-dev-qa-db-ja.com

-execを見つけるための引数がありません

Findと-execを使用して特定のファイルを削除したい。しかし、bashが私に言うことはありそうにない、私はいくつかの議論を「見逃している」。

find . -name *.png -exec rm {} /;

何が恋しいですか?

いくつかのファイルの名前を変更しようとすると、同じ「引数がありません」が返されます。

find . -name ic_launcher.png -exec mv {} other_name.png /;

誰かが私に言うことができますか、どのbashが見逃しているか、そしてなぜこのコマンドが成功しないのですか?

6
Rafael T

末尾のセミコロンは、シェルで解釈されるのではなくfindに渡されるように、引用符で囲むかエスケープする必要があります。

find . -name ic_launcher.png -exec mv '{}' other_name.png ';'

または

find . -name ic_launcher.png -exec mv '{}' other_name.png \;

あなたがやろうとしていることをするべきです。

15
Wojtek