私は似たようなものがありますgrep "keyword" -B 3 log
。次のような多くの結果が表示されます。
some trash
[GET] /orders/42
one more trash
keyword and useful info
[GET] /orders/43
some trash
one more trash
keyword and useful info
some trash
one more trash
[GET] /orders/44
keyword and useful info
line.txtを使用してgrep
各結果を別々のファイルに保存するにはどうすればよいですか?各結果には1行が保証されます。42, 43, 44
keyword and useful info
grep
[GET] /orders/[0-9]*
答え1
awk -v keyword=keyword -F/ '/\[GET\]/ { id=$NF; next } $0 ~ keyword { print $0 > id }' log