awkを使用して一致する行を取得します

awkを使用して一致する行を取得します

私の考えでは

MAths
asad
2323
dfd

asad私がした後、行が表示されます。

awk '{if($1=="asad")next};1' test

答えを得た

MAths
2323
dfd

なぜnext動作しないのですか?Maths残りの行だけを一致させたいのです。これを行うことができますが、regex比較条件が必要で、if結果を変数に保存したいと思います。

ベストアンサー1

私はあなたが次のようなことをしたいと思います:

awk 'on{print;on=0} $1=="asad"{on=1}' test

あなたがやっているように、1スクリプトの最後にあるものはすべての行を印刷します(nextが呼び出されたときを除いてスキップされます)

おすすめ記事