OSX 터미널에서 gawk(GNU awk)의 구문 오류를 해결하는 방법은 무엇입니까?

OSX 터미널에서 gawk(GNU awk)의 구문 오류를 해결하는 방법은 무엇입니까?

저는 OSX 터미널을 사용하고 있으며 정규식을 통해 로그 파일의 지정된 텍스트를 추출하려고 합니다.

awk 버전은

GNU Awk 4.2.1, API: 2.0 (GNU MPFR 4.0.1, GNU MP 6.1.2)
Copyright (C) 1989, 1991-2018 Free Software Foundation.

내가 시도한 것은

$gawk '/123/ BEGIN{RS="DEBUG"; FS="\n"}{print $0"\n"}END{}' ./app_108_utf8_T2.log > output.txt

하지만 어크는 말한다

gawk: cmd. line:1: /123/ BEGIN{RS="DEBUG"; FS="\n"}{print $0"\n"}END{}
gawk: cmd. line:1:       ^ syntax error

awk가 오류를 보고하는 이유는 무엇입니까?

답변1

도망치고 싶어하는 것 같아

gawk 'BEGIN{RS="DEBUG"; FS="\n"} /123/{print $0"\n"}' ./app_108_utf8_T2.log > output.txt

BEGIN프로세스가 시작될 때 실행할 명령 블록을 정의하고 /123/"123" 정규식이 현재 줄과 일치할 때 실행할 명령 블록을 정의합니다. 단일 블록에 대해 두 가지를 모두 지정할 수는 없습니다.

관련 정보