ตามคู่มือ 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 จะฟุ่มเฟือย