awk와 일치하는 컨텍스트에 변수 전달

awk와 일치하는 컨텍스트에 변수 전달

파일의 awk시작 패턴에서 끝 패턴까지의 컨텍스트를 추출하려고 합니다.

다음은 재현할 단순화된 입력 예입니다.

$ cat file
1
2
3
    
4
5
6

1다음과 같이 시작 모드를 통과하면 작동합니다.

$ awk '/1/,/^$/' file

1
2
3

그러나 시작 모드로 변수를 전달하면 결과가 나오지 않습니다.

$ awk -v var=1 '/var/,/^$/' file

답변1

변수 이름은 awk 내부적으로 확장되지 않습니다 //. 따라서 가 있으면 awk는 a, an , an을 차례로 /var/검색합니다 . 당신이 원하는 것은 :var

$  awk -v var=1 '$0~var,/^$/' file
1
2
3

관련 정보