note_16.1_shell腳本continue、break蠢护、while行讀文件雅宾、for((;;))

bash腳本編程:循環(huán)執(zhí)行

for, while, until

  • 進(jìn)入條件:
    for:列表元素非空;
    while:條件測(cè)試結(jié)果為“真”
    unitl:條件測(cè)試結(jié)果為“假”

  • 退出條件:
    for:列表元素遍歷完成葵硕;
    while:條件測(cè)試結(jié)果為“假”
    until:條件測(cè)試結(jié)果為“真”

  • 循環(huán)控制語(yǔ)句:

    • continue:提前結(jié)束本輪循環(huán)眉抬,而直接進(jìn)入下一輪循環(huán)判斷;

      while  CONDITION1; do
         CMD1
         ...
         if  CONDITION2; then
             continue
         fi
         CMDn
         ...
      done
      
    • break:提前跳出循環(huán)

      while  CONDITION1; do
          CMD1
          ...
          if  CONDITION2; then
              break
          fi
       done
      

sleep命令:
?? - delay for a specified amount of time

??sleep NUMBER


練習(xí)

每隔3秒鐘到系統(tǒng)上獲取已經(jīng)登錄用戶的用戶的信息懈凹;其中蜀变,如果logstash用戶登錄了系統(tǒng),則記錄于日志中介评,并退出库北;

[root@localhost ~]# bash /scripts/e16-1.sh
logstash pts/2        2019-03-16 06:13 (192.168.223.1)
[root@localhost ~]# tail /tmp/users.log 
logstash login
[root@localhost ~]# cat /scripts/e16-1.sh
#!/bin/bash
while true;do
    who | grep logstash
    if [ $? -eq 0 ];then
        echo "logstash login" >> /tmp/users.log
        break
    fi
    sleep 3
done
    

while循環(huán)的特殊用法(遍歷文件的行):

while  read  VARIABLE; do
    循環(huán)體;
done  <  /PATH/FROM/SOMEFILE

示例:找出ID號(hào)為偶數(shù)的用戶们陆,顯示其用戶名寒瓦、ID及默認(rèn)shell;

[root@localhost ~]# bash /scripts/e16-2.sh 
root:0:/bin/bash
daemon:2:/sbin/nologin
lp:4:/sbin/nologin
shutdown:6:/sbin/shutdown
mail:8:/sbin/nologin
games:12:/sbin/nologin
ftp:14:/sbin/nologin
systemd-network:192:/sbin/nologin
sshd:74:/sbin/nologin
chrony:998:/sbin/nologin
fedora:4004:/bin/bash
archlinux:4006:/bin/bash
tcpdump:72:/sbin/nologin
saslauth:996:/sbin/nologin
apache:48:/sbin/nologin
haproxy:188:/sbin/nologin
[root@localhost ~]# cat /scripts/e16-2.sh
#!/bin/bash
while read line;do
    uid=$(echo $line |cut -d':' -f3)
    if [ $[$uid%2] -eq 0 ];then
        echo $line |cut -d: -f1,3,7
    fi
done < /etc/passwd

for循環(huán)的特殊用法:

for  ((控制變量初始化;條件判斷表達(dá)式;控制變量的修正語(yǔ)句)); do
    循環(huán)體
done
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末棒掠,一起剝皮案震驚了整個(gè)濱河市孵构,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌烟很,老刑警劉巖颈墅,帶你破解...
    沈念sama閱讀 206,839評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異雾袱,居然都是意外死亡恤筛,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門芹橡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)毒坛,“玉大人,你說(shuō)我怎么就攤上這事〖逡螅” “怎么了屯伞?”我有些...
    開封第一講書人閱讀 153,116評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)豪直。 經(jīng)常有香客問(wèn)我劣摇,道長(zhǎng),這世上最難降的妖魔是什么弓乙? 我笑而不...
    開封第一講書人閱讀 55,371評(píng)論 1 279
  • 正文 為了忘掉前任末融,我火速辦了婚禮,結(jié)果婚禮上暇韧,老公的妹妹穿的比我還像新娘勾习。我一直安慰自己,他們只是感情好懈玻,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,384評(píng)論 5 374
  • 文/花漫 我一把揭開白布巧婶。 她就那樣靜靜地躺著,像睡著了一般酪刀。 火紅的嫁衣襯著肌膚如雪粹舵。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,111評(píng)論 1 285
  • 那天骂倘,我揣著相機(jī)與錄音眼滤,去河邊找鬼。 笑死历涝,一個(gè)胖子當(dāng)著我的面吹牛诅需,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播荧库,決...
    沈念sama閱讀 38,416評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼堰塌,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了分衫?” 一聲冷哼從身側(cè)響起场刑,我...
    開封第一講書人閱讀 37,053評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎蚪战,沒(méi)想到半個(gè)月后牵现,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,558評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡邀桑,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,007評(píng)論 2 325
  • 正文 我和宋清朗相戀三年瞎疼,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片壁畸。...
    茶點(diǎn)故事閱讀 38,117評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡贼急,死狀恐怖茅茂,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情太抓,我是刑警寧澤空闲,帶...
    沈念sama閱讀 33,756評(píng)論 4 324
  • 正文 年R本政府宣布,位于F島的核電站走敌,受9級(jí)特大地震影響进副,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜悔常,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,324評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望给赞。 院中可真熱鬧机打,春花似錦、人聲如沸片迅。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)柑蛇。三九已至芥挣,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間耻台,已是汗流浹背空免。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留盆耽,地道東北人蹋砚。 一個(gè)月前我還...
    沈念sama閱讀 45,578評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像摄杂,于是被迫代替她去往敵國(guó)和親坝咐。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,877評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容