欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

在awk中怎么使用流程控制語(yǔ)句

這篇文章將為大家詳細(xì)講解有關(guān)在awk中怎么使用流程控制語(yǔ)句,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

創(chuàng)新互聯(lián)專(zhuān)注于云安企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站開(kāi)發(fā),商城網(wǎng)站建設(shè)。云安網(wǎng)站建設(shè)公司,為云安等地區(qū)提供建站服務(wù)。全流程定制設(shè)計(jì),專(zhuān)業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專(zhuān)業(yè)和態(tài)度為您提供的服務(wù)

在 awk 編程中有各種各樣的流程控制語(yǔ)句,其中包括:

  • if-else 語(yǔ)句

  • for 語(yǔ)句

  • while 語(yǔ)句

  • do-while 語(yǔ)句

  • break 語(yǔ)句

  • continue 語(yǔ)句

  • next 語(yǔ)句

  • nextfile 語(yǔ)句

  • exit 語(yǔ)句

然而,對(duì)于本系列的這一部分,我們將闡述:if-else、for、while 和 do while 語(yǔ)句。請(qǐng)記住,我們已經(jīng)在這個(gè) awk 系列的第 6  部分介紹過(guò)如何使用 awk 的 next 語(yǔ)句。

1. if-else 語(yǔ)句

如你想的那樣。if 語(yǔ)句的語(yǔ)法類(lèi)似于 shell 中的 if 語(yǔ)句:

if  (條件 1) {      動(dòng)作 1 } else {       動(dòng)作 2 }

在上述語(yǔ)法中,條件 1 和條件 2 是 awk 表達(dá)式,而動(dòng)作 1 和動(dòng)作 2 是當(dāng)各自的條件得到滿(mǎn)足時(shí)所執(zhí)行的 awk 命令。

當(dāng)條件 1 滿(mǎn)足時(shí),意味著它為真,那么動(dòng)作 1 被執(zhí)行并退出 if 語(yǔ)句,否則動(dòng)作 2 被執(zhí)行。

if 語(yǔ)句還能擴(kuò)展為如下的 if-else_if-else 語(yǔ)句:

if (條件 1){      動(dòng)作 1 } else if (條件 2){       動(dòng)作 2 } else{      動(dòng)作 3 }

對(duì)于上面的形式,如果條件 1 為真,那么動(dòng)作 1 被執(zhí)行并退出 if 語(yǔ)句,否則條件 2 被求值且如果值為真,那么動(dòng)作 2 被執(zhí)行并退出 if  語(yǔ)句。然而,當(dāng)條件 2 為假時(shí),那么動(dòng)作 3 被執(zhí)行并退出 if 語(yǔ)句。

這是在使用 if 語(yǔ)句的一個(gè)實(shí)例,我們有一個(gè)用戶(hù)和他們年齡的列表,存儲(chǔ)在文件 users.txt 中。

我們要打印一個(gè)清單,顯示用戶(hù)的名稱(chēng)和用戶(hù)的年齡是否小于或超過(guò) 25 歲。

aaronkilik@tecMint ~ $ cat users.txt Sarah L         35      F Aaron Kili      40      M John  Doo       20      M Kili  Seth      49      M

我們可以寫(xiě)一個(gè)簡(jiǎn)短的 shell 腳本來(lái)執(zhí)行上文中我們的工作,這是腳本的內(nèi)容:

#!/bin/bash awk ' {         if ( $3 <= 25 ){            print "User",$1,$2,"is less than 25 years old." ;         }         else {            print "User",$1,$2,"is more than 25 years old" ;         } }'    ~/users.txt

然后保存文件并退出,按如下方式使腳本可執(zhí)行并運(yùn)行它:

$ chmod +x test.sh$ ./test.sh

輸出樣例

User Sarah L is more than 25 years old User Aaron Kili is more than 25 years old User John Doo is less than 25 years old. User Kili Seth is more than 25 years old

2. for 語(yǔ)句

如果你想在一個(gè)循環(huán)中執(zhí)行一些 awk 命令,那么 for 語(yǔ)句為你提供一個(gè)做這個(gè)的合適方式,格式如下:

for ( 計(jì)數(shù)器的初始化 ; 測(cè)試條件 ; 計(jì)數(shù)器增加 ){       動(dòng)作 }

這里,該方法是通過(guò)一個(gè)計(jì)數(shù)器來(lái)控制循環(huán)執(zhí)行來(lái)定義的,首先你需要初始化這個(gè)計(jì)數(shù)器,然后針對(duì)測(cè)試條件運(yùn)行它,如果它為真,執(zhí)行這些動(dòng)作并最終增加這個(gè)計(jì)數(shù)器。當(dāng)計(jì)數(shù)器不滿(mǎn)足條件時(shí),循環(huán)終止。

在我們想要打印數(shù)字 0 到 10 時(shí),以下 awk 命令顯示 for 語(yǔ)句是如何工作的:

$ awk 'BEGIN{ for(counter=0;counter<=10;counter++){ print counter} }'

輸出樣例

0 1 2 3 4 5 6 7 8 9 10

3. while 語(yǔ)句

while 語(yǔ)句的傳統(tǒng)語(yǔ)法如下:

while ( 條件 ) {           動(dòng)作 }

這個(gè)條件是一個(gè) awk 表達(dá)式而動(dòng)作是當(dāng)條件為真時(shí)被執(zhí)行的 awk 命令。

下面是一個(gè)說(shuō)明使用 while 語(yǔ)句來(lái)打印數(shù)字 0 到 10 的腳本:

#!/bin/bash awk ' BEGIN{ counter=0;         while(counter<=10){               print counter;               counter+=1;         } }'

保存文件并使腳本可執(zhí)行,然后運(yùn)行它:

$ chmod +x test.sh $ ./test.sh

輸出樣例

0 1 2 3 4 5 6 7 8 9 10

4. do while 語(yǔ)句

它是上文中 while 語(yǔ)句的一個(gè)變型,具有以下語(yǔ)法:

do {      動(dòng)作 }  while (條件)

這輕微的區(qū)別在于,在 do while 語(yǔ)句下,awk 的命令在求值條件之前執(zhí)行。使用上文 while 語(yǔ)句的例子,我們可以通過(guò)按如下所述修改  test.sh 腳本中的 awk 命令來(lái)說(shuō)明 do while 語(yǔ)句的用法:

#!/bin/bash awk ' BEGIN{ counter=0;         do{             print counter;             counter+=1;         }         while (counter<=10) }'

修改腳本之后,保存文件并退出。按如下方式使腳本可執(zhí)行并執(zhí)行它:

$ chmod +x test.sh $ ./test.sh

輸出樣例

0 1 2 3 4 5 6 7 8 9 10

關(guān)于“在awk中怎么使用流程控制語(yǔ)句”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

網(wǎng)頁(yè)名稱(chēng):在awk中怎么使用流程控制語(yǔ)句
文章分享:http://aaarwkj.com/article16/phdogg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、電子商務(wù)App開(kāi)發(fā)、App設(shè)計(jì)、網(wǎng)站改版、網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
亚洲av少妇高潮流白浆在线| 国产欧美一区二区三区久久| 欧美一区二区日本国产激情| 欧美一区二区三在线| 欧美黄片网站在线观看| 中文字幕日韩av综合在线| 99热这里只有精品免费播放| 国产老熟女一区二区三区| 国产午夜福利诱惑在线观看| 粉嫩一区二区三区av| 亚洲午夜福利啪啪啪| 欧美人妻不卡一区二区久久 | 色吊最新在线视频免费观看| 日韩精品国产自拍在线| 日韩欧美黄片一区二区三区| 午夜精品国产日韩欧美在线| 中文字幕有码高清在线| 不卡视频一区二区日韩| 国产精品第一区第二区| 黄色亚洲日本欧美在线观看| 日本人妻在线不卡视频| 国产高清视频成人在线观看| 国产激情小网站免费看| 中高龄夫妇五十路六十路| 欧美在线免费黄片视频| 日韩中文字幕在线二区| 成年人收看黄色一二级片 | 亚洲国产日本一区自拍| 日本在线人妻一区二区| 欧美成人精品欧美一级乱| 国产青青草成人在线视频| 亚洲天堂国产中文在线| 成人夜间视频在线观看| 中文字幕日韩不卡顿一区二区| 97视频在线观看网站| 亚洲人色中文字幕天堂| 蜜臀av免费在线观看| 一区二区不卡中文av| 欧美精品一区二区毛卡片| 中文字幕在线视频黄字幕| 亚洲伊人av第一页在线观看|