AWK có thể làm điều này với các phạm vi mẫu, cho phép sử dụng bất kỳ biểu thức chính quy nào:
echoer | awk '/pattern/,0'
sẽ in echoer
đầu ra bắt đầu bằng khớp dòng đầu tiên pattern
.
AWK dựa trên mô hình và thường được sử dụng với một mô hình nếu mô hình này phù hợp, thực hiện kiểu tiếp cận này. Mô hình này có thể là một loạt các mô hình, được định nghĩa là mô hình khi mô hình này khớp, bắt đầu thực hiện điều này, cho đến khi mô hình khác này khớp với mô hình; điều này được chỉ định bằng cách viết hai mẫu được phân tách bằng dấu phẩy, như trên. Các mẫu có thể khớp với văn bản, như trong /pattern/
, trong đó dòng hiện tại được kiểm tra so với mẫu, được hiểu là biểu thức chính quy; chúng cũng có thể là biểu thức tổng quát, được đánh giá cho mỗi dòng và được coi là khớp nếu kết quả của chúng khác không hoặc không trống.
Trong AWK, hành động mặc định là in dòng hiện tại.
Đặt tất cả những thứ này lại với nhau, awk '/pattern/,0'
tìm kiếm các dòng khớp pattern
và khi tìm thấy một dòng, áp dụng hành động mặc định cho tất cả các dòng cho đến khi 0
điều kiện khớp (không khác không). awk '/pattern/,""'
cũng sẽ làm việc
Các nhãn hiệu gawk đi vào chi tiết nhiều hơn nữa.