亚洲国产日韩人妖另类,久久只有这里有精品热久久,依依成人精品视频在线观看,免费国产午夜视频在线

      
      

        快速學(xué)習(xí)awk編程(七)

        條件判斷格式如下:if (邏輯條件) 語句 else 語句如果判斷后需要執(zhí)行多條語句,格式如下:if (表達式){語句1語句2}else{語句3語句4}注意;上面對大括號書寫的位置,兩個分支部分書寫不一樣,但都是合法的寫法。如果要寫在同一行,需要使用分號,如下:if (表達式){語句1;語句2;}else{語句3;語句4;}如果分支條件超過2個,可以使用else if,如下:if (表達式){語句1語句2}else if{語句3語句4}else{語句5語句6}對于只有2個分支的情況,還有一種簡便寫法(表達式)? action1:action2例如:grade = ( avg > 65) ? “pass”:”fail”相當(dāng)于if(avg>65) grade=”pass” else grade=”fail”這部分比較簡單,跟C語言非常類似。最后對表達式做簡單說明。表達式可以是簡單的邏輯判斷表達式,例如:avg >65avg == 70注意邏輯判斷相等需要用“==”表達式也可以用正則,例如:avg ~ /[0-9]/多個條件可以用“&&” 、”||”等邏輯運算符連接。循環(huán)首先講下while循環(huán),格式如下:while (表達式) action如果是多個語句要執(zhí)行,跟if語句方式一樣,如下:while (表達式){ action1action2}while內(nèi)表達式為真時,循環(huán)執(zhí)行語句,為假時則循環(huán)退出執(zhí)行后面的語句再來看do循環(huán),格式如下:doactionwhile (表達式)或do{action1action2}while (表達式)跟while執(zhí)行條件一樣,表達式為真執(zhí)行循環(huán),為假則退出循環(huán)執(zhí)行后面的語句。但是要注意與while循環(huán)的不同,do循環(huán)在判斷條件之前會先執(zhí)行一次循環(huán)內(nèi)的代碼,之后才判斷表達式。而while則是先判斷表達式后執(zhí)行代碼。也就是,do循環(huán)不管條件真假,至少會執(zhí)行一次代碼。對于初學(xué)者,要特別注意。for循環(huán)for循環(huán)是一種固定循環(huán)次數(shù)的循環(huán),格式如下:for(計數(shù)器變量初始化;計數(shù)器變量表達式;計數(shù)器變量步増操作)action或for(計數(shù)器變量初始化;計數(shù)器變量表達式;計數(shù)器變量步増操作){action1action2}計數(shù)器變量初始化,例如:i=1計數(shù)器變量表達式,例如:i<100計數(shù)器變量步増操作,例如i++影響流控制的語句break和continue會影響流控制。break語句會退出當(dāng)前循環(huán),執(zhí)行循環(huán)外的語句。continue語句會終止當(dāng)前循環(huán)本次的執(zhí)行,執(zhí)行循環(huán)下一次的循環(huán)執(zhí)行。另外有兩個影響主輸入循環(huán)的語句,next和exit。next可以導(dǎo)致讀入下一個輸入行,并返回到腳本的頂部exit語句是從循環(huán)退出,并將控制轉(zhuǎn)入END部分;如果沒有定義END,那么會退出執(zhí)行。數(shù)組數(shù)組中的每一個元素通過他們在屬主總的下標(biāo)來訪問。每個下標(biāo)都用方括號括起來。下面是一個個數(shù)組賦值的例子:arr[1]=100數(shù)組的大小不需要指明,只需要為數(shù)組指定標(biāo)識符。結(jié)合for循環(huán),可以方便的獲得數(shù)組每個數(shù)組元素:例如:輸出數(shù)組arr1中5個元素值imax=5for (i=1;i<=imax;;i+=)print arr1[i]關(guān)聯(lián)數(shù)組在awk中,所有數(shù)組都是關(guān)聯(lián)數(shù)組。關(guān)聯(lián)數(shù)組的獨特之處在于他的下標(biāo)可以是一個字符串或一個數(shù)值。關(guān)聯(lián)數(shù)組在數(shù)字的下標(biāo)和元素之間建立了一種“關(guān)聯(lián)”。對于數(shù)組中的每個元素都有兩個相關(guān)的值:元素的下標(biāo)和元素的值。這些元素不像傳統(tǒng)的數(shù)組那樣按一定的順序存儲。當(dāng)然,awk中的數(shù)組的下標(biāo)也可以是數(shù)據(jù)型的,也能夠順序訪問數(shù)組中的所有元素。但是這些下標(biāo)的意義和其他編程語言所表示的意義不同-他們不一定代表數(shù)的位置。關(guān)聯(lián)數(shù)組是awk中的一個獨特的特征,它的一個強大功能就是可使用字符串作為一個數(shù)據(jù)的下標(biāo)。例如:我們可以使用的一個字段作為數(shù)組的下標(biāo):arr1[$1]=$2有一個特殊的循環(huán)方法可以訪問關(guān)聯(lián)數(shù)組的所有元素。它是for循環(huán)的一個版本。for (variable in array)print array[arriable]但是訪問數(shù)組中的條目的順序是隨機的。在awk實現(xiàn)中,這種順序經(jīng)常發(fā)生變化。記住awk中的所有數(shù)組下標(biāo)都是字符串類型,即使使用了數(shù)字作為下標(biāo),awk將自動將它們轉(zhuǎn)換為字符串。如果使用實數(shù),過去某些版本可能會將實數(shù)轉(zhuǎn)換為整數(shù),在CentOS7.6下,也可以使用實數(shù)作為下標(biāo)。關(guān)鍵字in也是一個操作符,可以在表達式中測試一個下標(biāo)是否是數(shù)組的成員。表達式為:item in array例如:if ( "basic" in arr1)

        鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權(quán)歸原作者所有,如有侵權(quán)請聯(lián)系管理員(admin#wlmqw.com)刪除。
        上一篇 2022年6月16日 06:10
        下一篇 2022年6月16日 06:10

        相關(guān)推薦

        聯(lián)系我們

        聯(lián)系郵箱:admin#wlmqw.com
        工作時間:周一至周五,10:30-18:30,節(jié)假日休息