find -exec {} ;とfind -exec {} +についてのメモ

正確には、以下のように使う。

$ find {$DIR} -exec ${CMD} {} \;
$ find {$DIR} -exec ${CMD} {} +

ここで、${DIR}findの検索対象ディレクトリであり、${CMD}は実行したいコマンドである。 また、\;となっているのは;エスケープするため。

例えば、

$ find .
.
./foo
./bar

であると仮定すると、

$ find . -exec ${CMD} {} \;

は、

$ ${CMD} .
$ ${CMD} ./foo
$ ${CMD} ./bar

と等価であり、

$ find . -exec ${CMD} {} +

は、

$ ${CMD} . ./foo ./bar

と等価である。