Linuxのfindコマンドの結果に対して、複雑な処理を実施する

通常、Linuxのfindコマンドでは

find 条件 -exec 処理コマンド "{}" \;

で検索結果に対して、処理コマンドを実行している。

findの結果ファイルフルパスにスペースがない場合、

for a in `find 条件`; do 処理コマンド $a ; done

で検索結果ファイルに対して複雑な処理を行うことが可能である。

検索結果のファイルパスにスペースがある場合、

bash - if command in find -exec - Unix & Linux Stack Exchange

に実現方法が書かれている。

find 条件 -exec sh -c ' 処理コマンド "{}" ' \;

でシングルクォートの中で複雑な処理を行うことが可能である。

やはりシェルは深い。