awk
내 대본에서 이상하게 행동합니다. 텍스트 파일에서 값을 읽으려고 합니다( file.txt
아래 참조).
awk
스크립트의 공백은 무시되지만 awk
디버그 스크립트에서 명령문만 테스트하면 올바른 출력이 제공됩니다.
이것은 file.txt
:
cain
jon
chris
johny
anthony
jose
이것은 내 awk
진술입니다:awk '{print $1}' file.txt
awk
내 스크립트에 이 명령문이 있을 때의 출력은 다음과 같습니다.
cain
jon
chris
johny
anthony
jose
awk
테스트 스크립트에서 해당 명령문을 분리할 때의 출력은 다음과 같습니다.
cain
jon
chris
johny
anthony
jose
구분 기호로 사용해 보았지만 \n
동일한 결과를 얻었습니다.
awk
내 스크립트의 동작이 격리된 스크립트의 동작과 다른 이유는 무엇입니까 ?
추가 설명이 필요하면 알려주시기 바랍니다.
답변1
awk
제 생각에는 이것이 스크립트 자체 보다는 스크립트의 버그일 수 있습니다 .
awk
RS
이중 개행 문자가 변수 로 설정된 경우 상황은 다음과 같습니다.
awk '{print $1}' RS='\n|\n\n' file
스크립트가 값을 변경했는지 확인해야 합니다 RS
.