2016-11-19 7 views
0

ファイル内のフレーズを探すスクリプトを作りたいです。私は、このスクリプトが見えるファイルの数を指定したくありません。grepで任意の数のファイルを処理する方法は?

+0

どのようにスクリプトを見て、どこに見えるでしょうか? – choroba

+0

あなたは何を意味するのか分かりませんが、 'grep'は複数の入力ファイルを取ることができます。たとえば、' grep foo dir1/* dir2/*。txt' – Thilo

+0

2ファイルを見たいとします。 – bwnuk

答えて

0

スクリプトは、あなたがこのようにスクリプト内のgrepを使用することができ、./script phrase ./file1 ./file2 ...のように呼び出されます場合は、次の

grep "[email protected]" 

これは、あなたが望むものと考えられます。スクリプトが./script option1 phrase option2 ./file1 ...のようなオプションがある場合、


することは、あなたは、このようなスクリプト内のgrepを使用することができます。

grep "$2" "${@:4}" 

このケースは2を使用していますフレーズが引数2であり、なぜなら4を使用しているため、最初のファイルは引数4です。

+0

しかし、私はこれらのファイルのスクリプト名を与えたいと思います。 – bwnuk

+0

例を挙げることができますか? –

+0

./script.sh phrase 私はこのスクリプトをそのように呼びたいと思います。 – bwnuk

0

検索する必要があるすべてのファイルをディレクトリ(例:/ folder/search /)に置き、次のコマンドを実行します。

grep -ri "Phrase to be searched here" /folder/search/ 

このコードは(例:それは「フレーズ」に一致するだろうが、とにも「PHRASE」)を検索し、大文字・小文字を区別しない方法で、フレーズと一致する語句を探します。

+0

しかし、それは異なる数のファイルで動作しますか? – bwnuk

+0

はい、そのフォルダ内のすべてのファイルを検索します –

関連する問題