首頁 > 軟體

awk 語法深入-判斷迴圈語句

2020-06-16 17:23:49

awk 判斷與迴圈語句

awk 作為一門語言,支援順序、判斷、迴圈三種語句。awk的這三種語句借鑑了C語言,可以控制程式的流程。
   條件語句有if/esle,迴圈語句有for迴圈、while迴圈、do/while迴圈。
 - if 語句 
   語法格式:
  1. {
  2. if(expression) {
  3. statement;statement;... # statement之間以分號隔開
  4. }
  5. }
eg.
  1. awk 'BEGIN{print "if"}{if($1<$2) print $2 " is big"}'/etc/passwd
 
 -if/else 語句
 語法格式:
  1. {
  2. if(expression){
  3. statement;statement;...# statement之間以分號隔開
  4. }
  5. else{
  6. statement;statement;...
  7. }
  8. }
eg.
  1.  awk 'BEGIN{print "if/else"} {if($1<$2) print $2 " is big";else print $1 " is big"}'/etc/passwd
 
  - if/else if語句
  提供條件分支語句的執行
 語法格式:
  1. {
  2. if(expression){
  3. statement;statement;...# statement之間以分號隔開
  4. }
  5. elseif(expression){
  6. statement;statement;...
  7. }
  8. elseif(expression){
  9. statement;statement;...
  10. }
  11. ...
  12. else{
  13. statement;statement;...
  14. }
  15. }
 解釋:程式會從上到下依次對條件expression進行判斷,一旦發現某個expression為真,立即執行緊跟的statements語句塊。執行完後立刻退出整個if語句,而不去執行下面的expression判斷。
     如果所有的expression都無法得到滿足,則執行最後一個else語句塊!
 
 迴圈是一種重複執行一個或多個操作的結構。
 
  - while迴圈
 語法: 條件表示式在迴圈頂進行部進行判斷
  1. while(condition){
  2. action   # 迴圈體
  3. }
 
 - do/while 迴圈
 語法: 迴圈體至少被執行一次,在程式碼塊結尾處進行判斷
  1.  do{
  2.      action
  3.  }while(condition)
 
 - for 迴圈
 語法格式:等同於C語言的for迴圈
  1. forinitial assignmentcomparsionincrement ){
  2.     coode block
  3. }
eg. 
  1. for( i =1; i <4; i++){
  2.     print "iteration",i
  3. }
 
  - break 和 continue
    break、continue 可用於影響程式的控制流。
  break 退出當前迴圈,不再繼續執行迴圈體
  continue 終止當前迴圈,從迴圈的頂部提前進入新的迴圈
 註: continue 在while 和 for 迴圈不同之處在於,在for迴圈主體中使用時,continue將使迴圈控制變數自動增加!

Linux常用命令之awk http://www.linuxidc.com/Linux/2016-09/135046.htm

Linux系統之文字格式化工具awk http://www.linuxidc.com/Linux/2016-02/128150.htm

AWK簡介及使用範例 http://www.linuxidc.com/Linux/2013-12/93519.htm

Linux awk文字分析工具 http://www.linuxidc.com/Linux/2015-12/126217.htm

Linux文字處理工具之awk  http://www.linuxidc.com/Linux/2015-01/111437.htm

如何在Linux中使用awk命令 http://www.linuxidc.com/Linux/2014-10/107542.htm

文字分析工具-awk  http://www.linuxidc.com/Linux/2014-12/110939.htm

AWK入門基礎教學  http://www.linuxidc.com/Linux/2016-12/138138.htm

使用awk格式化輸出文字 http://www.linuxidc.com/Linux/2016-04/130193.htm

本文永久更新連結地址http://www.linuxidc.com/Linux/2017-01/139370.htm


IT145.com E-mail:sddin#qq.com