awk 매뉴얼에 따르면 BEGIN과 END는 입력을 일치시키는 데 사용되지 않고 awk 스크립트에 시작 및 정리 정보를 제공하는 데 사용됩니다. 주어진 예는 다음과 같습니다.
ls -l | \
awk 'BEGIN { print "Files found:\n" } /\<[a|x].*\.conf$/ { print $9 }'
Files found:
amd.conf
antivir.conf
xcdroast.conf
xinetd.conf
먼저 출력 할 문자열을 인쇄합니다. 그런 다음 입력이 패턴 일치를 확인합니다. 여기서 입력은 a 또는 x로 시작하고 그 뒤에 문자가 한 번 또는 여러 번오고 .conf가옵니다. 일치하는 항목이 있으면 9 번째 열이 인쇄됩니다.
우리가 사용해야한다는 사실은 여기서 시작합니다. 즉, awk는 BEGIN 또는 END가 포함 된 인쇄 기능을 최대 하나만 사용할 수 있습니까? 그렇지 않다면 키워드 BEGIN없이 처음에 인쇄 기능을 사용할 수없는 이유는 무엇입니까? BEGIN이 불필요한 것 같습니다.