내가 이해한 바에 따르면 일반적으로 awk
파일이나 출력이 따릅니다.
그런 다음 해당 파일이나 출력의 모든 줄에서 코드를 실행합니다.
내 경우에는 내 명령에 awk '{print "Hi, Judy"}'
따른 파일이나 출력이 없었습니다 .
내가 이해한 바에 따르면 아무것도 인쇄되지 않거나 오류가 발생해야 합니다.
그런데 왜 실제로는 대화형 명령줄이 팝업되고 계속 누르면 다음 Enter과 같은 내용이 무한히 표시됩니다.
Hi, Judy
Hi, Judy
Hi, Judy
이 명령은 왜 이렇게 작동합니까?
#이 구분선 아래의 콘텐츠는 무시되어야 합니다.
추가 질문:
다른 명령을 시도했습니다.
awk ' BEGIN { print "Hi." } { print "Buddy." } { print "Bye." } '
무한대로 인쇄 될 것으로 예상됩니다 Hi. Buddy. Bye.
.
하지만 나는 다음을 얻습니다.
Hi.
Buddy
Bye.
Buddy
Bye.
Buddy
Bye.
이게 또 나를 혼란스럽게 한다. END clause
무한히 일할 수 있는데 왜 BEGIN clause
여기서는 한 번만 일할 수 있나요?
답변1
표준 입력(예: 키보드)에서 데이터를 읽습니다.
이것을 시도해보고 무슨 뜻인지 확인하십시오
awk '{ print "Here is your line:", $0 }'