find . -print0 | grep --null 'FooBar' | xargs -0 ...
grep かどうかはわかりません --null をサポート 、 xargs かどうか -0 をサポート 、Leopard では、しかし GNU ではすべて問題ありません。
そのすべてを単一の find に組み合わせることができます コマンド:
find . -iname "*foobar*" -exec cp -- "{}" ~/foo/bar \;
これにより、スペースを含むファイル名とディレクトリが処理されます。 -name を使用できます 大文字と小文字を区別する結果を取得します。
注:-- cp に渡されるフラグ - で始まるファイルを処理できないようにします オプションとして。