.awk 파일 실행 시 잘못된 문자 오류

.awk 파일 실행 시 잘못된 문자 오류

아래 코드를 사용하여 100파일의 각 줄에 값을 추가하고 있습니다. 이 코드를 터미널에서 실행하면 정상적으로 실행되지만 코드를 .awk 파일에 저장하고 실행하면 오류가 발생합니다. 터미널 대신 스크립트 파일에서 이 코드를 어떻게 실행할 수 있나요?

code:  awk -F ';' '{if ($2==NULL) print $0"100"}' example.txt

내.awk

awk -F ';' '{if ($2==NULL) print $0"100"}'

터미널의 명령

awk -f my.awk example.txt

실수

 invalid char ''' in expression. I get this error at ';'

이 오류를 수정하고 example.txt에서 awk 파일을 실행하려면 어떻게 해야 합니까?

답변1

awk실행 스크립트를 사용할 때 awk -f스크립트는 다음과 같아야 합니다.오직코드가 포함되어 있습니다 awk.

당신의 경우에는

{if ($2==NULL) print $0"100"}

또는

$2 == NULL { print $0 "100" }

다음 명령으로 실행할 수 있습니다.

awk -F ';' -f my.awk example.txt

FS이를 스크립트에서 설정하려면 ;(명령줄에서 사용하지 않고 정적으로 -F) BEGIN블록에서 다음을 수행하십시오.

BEGIN { FS = ";" }

$2 == NULL { print $0 "100" }

또한 이 변수는 NULL코드에 설정되어 있지 않습니다.

관련 정보