100個のテキストファイルを含むディレクトリがあります。私は次のようにディレクトリ内の指定されたテキストを検索するためにはgrepを使用:どのファイルがgrep結果を保持しているかを知るには?
cat *.txt | grep Ya_Mahdi
とgrepはYa_Mahdi
を示しています。
どのファイルにテキストが保存されているかを知る必要があります。出来ますか?
100個のテキストファイルを含むディレクトリがあります。私は次のようにディレクトリ内の指定されたテキストを検索するためにはgrepを使用:どのファイルがgrep結果を保持しているかを知るには?
cat *.txt | grep Ya_Mahdi
とgrepはYa_Mahdi
を示しています。
どのファイルにテキストが保存されているかを知る必要があります。出来ますか?
はちょうどcat
を取り除くとgrep
にファイルのリストを提供します:
grep Ya_Mahdi *.txt
これは、一般的にそのフォルダ内.txt
ファイルの数に応じて、仕事だろうが、grepのための引数リストがあまりにも得る可能性があります大。
あなたは防弾ソリューションのfind
を使用することができます。
find --maxdepth 1 -name '*.txt' -exec grep -H Ya_Mahdi {} +
それはファイル名を表示しません。 – hek2mgl
@ hek2mgl OPが使用しているgrepのバージョンによって異なります。 Mac OS Xを実行していて、複数のファイル名が入力として提供されている場合、組み込みのgrep(grep(BSD grep)2.5.1-FreeBSD)はファイル名を表示します。あなたが* single *ファイルだけを入力として提供する場合は、そうでない場合があります。 * .txtに一致する複数のファイルでテストしてもよろしいですか? –
私はそれがgrepのバージョンに依存しないと確信しています。問題は 'GREP_OPTIONS'変数がセットされていて、' -H'を含んでいるか、 'grep'がシェルのエイリアスであることです。 (後者の場合は/ bin/grepを試してください) – hek2mgl
は何 '男はあなたを教えてgrep'のでしょうか? –