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가 호출될 때를 제외하고, 건너뛰게 됩니다)

관련 정보