AWK if(條件)語句與迴圈簡介
awk 以if結構開頭的話句屬於操作語句。條件模式(conditional pattern) 中。if是隱含的。而條件操作語句的if則是直接宣告的,後面跟了一個用圓括號括起來的表示式。 |
IF 條件語句語法格式如下:
if (condition) action
也可以使用花括號來執行一組操作:
if (condition) { action-1 action-1 . . action-n }
以下例項用來判斷數字是奇數還是偶數:
$ awk 'BEGIN {num = 10; if (num % 2 == 0) printf "%d 是偶數\n", num }'
輸出結果為:
10 是偶數
IF - ELSE 條件語句語法格式如下:
if (condition) action-1 else action-2
在條件語句 condition 為 true 時只需 action-1,否則執行 action-2。
$ awk 'BEGIN { num = 11; if (num % 2 == 0) printf "%d 是偶數\n", num; else printf "%d 是奇數\n", num }'
輸出結果為:
11 是奇數
我們可以建立多個 IF - ELSE 格式的判斷語句來實現多個條件的判斷:
$ 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
For 迴圈的語法如下:
for (initialisation; condition; increment/decrement) action
for 語句首先執行初始化動作( initialisation ),然後再檢查條件( condition )。如果條件為真,則執行動作( action ),然後執行遞增( increment )或者遞減( decrement )操作。只要條件為 true 迴圈就會一直執行。每次迴圈結束都會進條件檢查,若條件為 false 則結束迴圈。
下面的例子使用 For 迴圈輸出數字 1 至 5:
$ awk 'BEGIN { for (i = 1; i <= 5; ++i) print i }'
輸出結果為:
1 2 3 4 5
While 迴圈的語法如下:
while (condition) action
While 迴圈首先檢查條件 condition 是否為 true ,若條件為 true 則執行動作 action。此過程一直重複直到條件 condition 為 flase 才停止。
下面是使用 While 迴圈輸出數字 1 到 5 的例子:
$ awk 'BEGIN {i = 1; while (i < 6) { print i; ++i } }'
輸出結果為:
1 2 3 4 5
break 用以結束迴圈:
在下面的示例子中,當計算的和大於 50 的時候使用 break 結束迴圈:
$ awk 'BEGIN { sum = 0; for (i = 0; i < 20; ++i) { sum += i; if (sum > 50) break; else print "Sum =", sum } }'
輸出結果為:
Sum = 0 Sum = 1 Sum = 3 Sum = 6 Sum = 10 Sum = 15 Sum = 21 Sum = 28 Sum = 36 Sum = 45
Continue
Continue 語句用於在迴圈體內部結束本次迴圈,從而直接進入下一次迴圈迭代。
下面的例子輸出 1 到 20 之間的偶數:
$ awk 'BEGIN {for (i = 1; i <= 20; ++i) {if (i % 2 == 0) print i ; else continue} }'
輸出結果為:
2 4 6 8 10 12 14 16 18 20
Exit 用於結束 程式的執行。
該函式接受一個整數作為參數列示 AWK 程式結束狀態。 如果沒有提供該引數,其預設狀態為 0。
下面例子中當和大於 50 時結束 AWK 程式。
$ awk 'BEGIN { sum = 0; for (i = 0; i < 20; ++i) { sum += i; if (sum > 50) exit(10); else print "Sum =", sum } }'
輸出結果為:
Sum = 0 Sum = 1 Sum = 3 Sum = 6 Sum = 10 Sum = 15 Sum = 21 Sum = 28 Sum = 36 Sum = 45
讓我們檢查一下 執行後的返回狀態:
$ echo $?
執行上面的 可以得到如下的結果:
19
原文地址:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31559985/viewspace-2725514/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python條件語句與迴圈Python
- Python-條件語句和迴圈語句Python
- SqlServer中迴圈和條件語句SQLServer
- Verilog HDL迴圈語句簡介
- Python學習筆記3(條件語句+迴圈語句)Python筆記
- javascript新手入門之條件語句,迴圈JavaScript
- 條件迴圈語句組成了Python程式碼的骨架Python
- Mysql儲存過程 變數,條件,迴圈語句用法MySql儲存過程變數
- Java簡單迴圈語句案例Java
- python條件判斷與迴圈Python
- 前端筆記之JavaScript(三)關於條件判斷語句、迴圈語句那點事前端筆記JavaScript
- 條件語句
- 簡單介紹Lua中三種迴圈語句的使用
- C語言中迴圈語句while 中判斷條件出現 || 和 && 的區別C語言While
- 分支語句和迴圈語句
- Ruby迴圈語句
- TypeScript 迴圈語句TypeScript
- MySQL迴圈語句MySql
- JavaScript for 迴圈語句JavaScript
- JavaScript 流程控制語句詳解:if語句、switch語句、while迴圈、for迴圈等JavaScriptWhile
- GO 條件語句Go
- javaScript條件語句JavaScript
- 條件分支與迴圈結構學習
- Python的迴圈語句Python
- 7-迴圈語句
- 七 while迴圈語句While
- JavaScript跳出for迴圈語句JavaScript
- PHP 條件迴圈鞏固PHP
- JS迴圈和條件分支JS
- 【js迴圈語句】for與while的區別JSWhile
- vue.js第四課 條件與迴圈Vue.js
- 04.條件語句
- Go:條件控制語句Go
- Python if else條件語句Python
- 在Linux中,shell指令碼中的條件語句和迴圈結構是什麼?Linux指令碼
- Scala與Java差異(二)之條件控制與迴圈Java
- Python 迴圈語句的使用Python
- MyBatis xml foreach迴圈語句MyBatisXML