.cpp で終わるいくつかのファイルで、"[0]" と "[1]" のすべてのインスタンスを見つける必要があります。ファイルは異なるサブディレクトリにあります。
sed を使用してサブディレクトリ内のすべての .cpp ファイルをスキャンし、パターンを探すことは可能ですか?
ありがとう!
.cpp で終わるいくつかのファイルで、"[0]" と "[1]" のすべてのインスタンスを見つける必要があります。ファイルは異なるサブディレクトリにあります。
sed を使用してサブディレクトリ内のすべての .cpp ファイルをスキャンし、パターンを探すことは可能ですか?
ありがとう!
放っておけば、検索用ではなく、ストリーム編集用sed
です。を使用します。grep
find . -iname '*.cpp' | while read filename; do grep --with-filename '\[[01]\]' "$filename"; done
またはスクリプトで:
find . -iname '*.cpp' | while read filename
do
grep --with-filename '\[[01]\]' "$filename"
done
スペースを含むファイル名が生き残るように、read
ここで(および引用符で囲んで)使用しています。$filename
Windows システムでは、これは特に悪夢です。
どのファイルも特に大きいことがわかっていない場合は、入力の効率のために検索の効率を犠牲にして、すべてのファイルを検索し、cpp ファイルからの出力のみを選択することができます。
grep -r '\[[01]\]' . | grep '.cpp:'