次のコードがあります。
int val
nameof_function();
上記のコードはfilename.txtファイルにあります。以下を使用して、ファイル内の一連の行を検索します。
grep "int val.*\n.*(" filename.txt
しかし、複数行では動作しません。
私も試しました
awk '/int val/,/\(/' filename.txt
ここでは、出力にファイル名は表示されません。
grep
出力でファイル名を見つけることができますが、次を使用すると複数行を検索できません。
次の出力が必要です。
filename.txt:int val nameof_function
誰でも助けてください
答え1
int val
ソースファイルに1行に分かれた機能が含まれている場合は、grepの出力を調整して下の2行の内容を見つけて出力するようにします。
次のようになります
grep -A 2 "int val" *.txt