私はこれを試しましたが、動作しません。
find . -mtime +10 -print| grep -H -r "test" | cut -d: -f1
xargs
によって検出されたファイルを利用して処理することができますfind
が、find
単独で作成することもできます。
find . -mtime +10 -exec grep -l "test" {} \+
find ... -exec XXX {} \;
(または\+
、Kevin に感謝) で見つかったファイルに対して XXX コマンドを実行しますfind
。grep -l
で取得しようとしていると思うので、ファイルの名前を表示するだけですcut -d: -f1
。-type f
ファイルを検索するだけで、ディレクトリを検索しないように追加する必要がある場合もあります。
次のような xargs を使用して実行する必要があります。
find . -mtime +10 -print0 | xargs -0 grep -H -r "test" | cut -d: -f1
編集
ファイル名のスペースで問題が発生しないように、オプションを挿入しました。