bashでやるべきことがいくつかあります。こんなふうになります:
最初の引数として、書かれている順序でファイル内を検索する単語を入力し、2 番目の引数でディレクトリを入力します。再帰的に検索し、表示されるファイル名を返す必要があります。
例bash mybash "alice cat" .
: 「alice has a cat」、「alice cat」などを含むファイルを返す必要がありますが、「cat has alice」は含まれません。
私はこのようなことをしました
#!/bin/bash
pattern=".*"
for arg in $1; do
pattern+="${arg}.*"
done
grep -r ${pattern} $2
ただし、行ごとにのみ検索され、次のファイルは見つかりません。
「アリス何か」
「新しい行には猫がいます」
しかし、それを返す必要があります。
いくつかの助けをいただければ幸いです。
挨拶します。