grep を実行して一致する行のみを返すにはどうすればよいですか? つまり、パス/ファイル名は結果から省略されます。
この場合、現在のディレクトリにあるすべての.barファイルを調べて、FOOという語句を検索します。
find . -name '*.bar' -exec grep -Hn FOO {} \;
ベストアンサー1
必要はありませんfind
。特定のディレクトリ内のパターンを探しているだけなら、これで十分です。
grep -h FOO /your/path/*.bar
-h
ファイル名を非表示にするパラメータはどこにありますかman grep
?
-h, --ファイル名なし
出力時にファイル名のプレフィックスを抑制します。これは、検索するファイルが 1 つだけ (または標準入力だけ) の場合のデフォルトです。
使用していたことに注意してください
-H, --ファイル名付き
一致するファイル名を出力します。検索するファイルが複数ある場合はこれがデフォルトです。