AWK - Luồng kiểm soát
Giống như các ngôn ngữ lập trình khác, AWK cung cấp các câu lệnh điều kiện để kiểm soát luồng của một chương trình. Chương này giải thích các câu lệnh kiểm soát của AWK với các ví dụ phù hợp.
Câu lệnh if
Nó chỉ đơn giản là kiểm tra tình trạng và thực hiện các hành động nhất định tùy thuộc vào tình trạng bệnh. Dưới đây là cú pháp củaif tuyên bố -
Cú pháp
if (condition)
action
Chúng ta cũng có thể sử dụng một cặp dấu ngoặc nhọn như dưới đây để thực thi nhiều hành động -
Cú pháp
if (condition) {
action-1
action-1
.
.
action-n
}
Ví dụ: ví dụ sau kiểm tra xem một số có chẵn hay không -
Thí dụ
[jerry]$ awk 'BEGIN {num = 10; if (num % 2 == 0) printf "%d is even number.\n", num }'
Khi thực thi đoạn mã trên, bạn nhận được kết quả sau:
Đầu ra
10 is even number.
Nếu tuyên bố khác
Trong if-else cú pháp, chúng tôi có thể cung cấp danh sách các hành động được thực hiện khi một điều kiện trở thành sai.
Cú pháp của if-else tuyên bố như sau:
Cú pháp
if (condition)
action-1
else
action-2
Trong cú pháp trên, action-1 được thực hiện khi điều kiện đánh giá là true và action-2 được thực hiện khi điều kiện đánh giá là false. Ví dụ: ví dụ sau kiểm tra xem một số có chẵn hay không -
Thí dụ
[jerry]$ awk 'BEGIN {
num = 11; if (num % 2 == 0) printf "%d is even number.\n", num;
else printf "%d is odd number.\n", num
}'
Khi thực thi mã này, bạn nhận được kết quả sau:
Đầu ra
11 is odd number.
Thang If-Else-If
Chúng tôi có thể dễ dàng tạo một if-else-if thang bằng cách sử dụng nhiều if-elsecác câu lệnh. Ví dụ sau đây chứng minh điều này -
Thí dụ
[jerry]$ awk 'BEGIN {
a = 30;
if (a==10)
print "a = 10";
else if (a == 20)
print "a = 20";
else if (a == 30)
print "a = 30";
}'
Khi thực thi mã này, bạn nhận được kết quả sau:
Đầu ra
a = 30