- AWK 教程
- AWK - 主頁
- AWK - 概述
- AWK - 環境
- AWK - 工作流程
- AWK - 基礎語法
- AWK - 基礎示例
- AWK - 內建變數
- AWK - 運算子
- AWK - 正則表示式
- AWK - 陣列
- AWK - 流程控制
- AWK - 迴圈
- AWK - 內建函式
- AWK - 使用者自定義函式
- AWK - 輸出重定向
- AWK - 漂亮列印
- AWK 相關文章
- AWK - 快速指南
- AWK - 相關文章
- AWK - 討論
AWK - 流程控制
像其他程式語言一樣,AWK 也提供了條件語句來控制程式的流程。本篇將透過合適示例講解 AWK 的控制語句。
If 語句
它僅測試條件,並根據條件執行某些操作。以下是 **if** 語句的語法:
語法
if (condition) action
我們還可以使用一對花括號,如下所示,來執行多個操作:
語法
if (condition) {
action-1
action-1
.
.
action-n
}
例如,以下示例檢查一個數字是否是偶數:
示例
[jerry]$ awk 'BEGIN {num = 10; if (num % 2 == 0) printf "%d is even number.\n", num }'
執行上述程式碼後,得到的如下結果:
輸出
10 is even number.
If Else 語句
在 **if-else** 語法中,我們可以提供當條件為假時要執行的動作列表。
**if-else** 語句的語法如下:
語法
if (condition) action-1 else action-2
在上述語法中,當 condition 的值評估為真時執行 action-1,當 condition 的值評估為假時執行 action-2。例如,以下示例檢查一個數字是否是偶數:
示例
[jerry]$ awk 'BEGIN {
num = 11; if (num % 2 == 0) printf "%d is even number.\n", num;
else printf "%d is odd number.\n", num
}'
執行此程式碼後,會得到以下結果:
輸出
11 is odd number.
If-Else-If 梯形
我們可以透過使用多個 **if-else** 語句來輕鬆建立 **if-else-if** 梯形。以下示例展示了這一點:
示例
[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";
}'
執行此程式碼後,會得到以下結果:
輸出
a = 30
廣告