溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Shell篇(2)-條件語句if及循環(huán)語句 for , while , unti

發(fā)布時(shí)間:2020-07-06 12:33:36 來源:網(wǎng)絡(luò) 閱讀:466 作者:gsshang 欄目:開發(fā)技術(shù)

 if 條件語句:


    介紹及作用 : 根據(jù)指定的條件來判斷其“真”(TRUE)、“假”(FALSE),根據(jù)邏輯計(jì)算的真假值,從而返回相應(yīng)的內(nèi)容。


 按結(jié)構(gòu)分類可分為3類:


  1. 單分支結(jié)構(gòu):

      

      語法格式:

      if   條件測(cè)試          

      then

             命令

      fi

      例 : 給 x, y賦值 , 測(cè)試x , y 是否相等 , 相等則輸出true

         Shell篇(2)-條件語句if及循環(huán)語句 for , while , unti

      由圖可看出 , 復(fù)制給變量x , y同意的值 , 用if語句來判斷 , 輸出的結(jié)果為true, 之后賦給y一個(gè)不同值的時(shí)候 , 輸出結(jié)果為無


  

  2. 雙分支結(jié)構(gòu):

      

      語法格式:

      if   條件測(cè)試

      then

             命令

      else

             命令

      fi

      例 : 按照上面的例子 , 給 x, y賦值 , 測(cè)試x , y 是否相等 , 相等則輸出true , 不相等則輸出 false

         Shell篇(2)-條件語句if及循環(huán)語句 for , while , unti

      由圖可看出 , 復(fù)制給變量x , y同意的值 , 用if語句來判斷 , 輸出的結(jié)果為true, 之后賦給y一個(gè)不同值的時(shí)候 , 輸出結(jié)果為false


  3. 多分支結(jié)構(gòu):

      

      語法格式:

      if   條件測(cè)試

      then

             命令

      elif   條件2 

      then 

             命令

      else

             命令

      then 

      fi

      例 : 猜測(cè) x 值的大小 , 創(chuàng)建一個(gè)名為 /sh/cai.sh 的腳本 , 使用vim編輯這個(gè)文件 , 在里面寫入命令 :

         Shell篇(2)-條件語句if及循環(huán)語句 for , while , unti

        (read  -p  表示提示輸入字符)

         Shell篇(2)-條件語句if及循環(huán)語句 for , while , unti

       運(yùn)行腳本后 , 可以看出當(dāng)輸入123時(shí) , 顯示的是 you are right ;  輸入大于123的數(shù)字時(shí) , 顯示的是 this number is big; 輸入小于123的數(shù)值時(shí) , 顯示的是 this number is little ;




 for循環(huán)語句:

     

    功能 : 在滿足條件的情況下 , 重復(fù)執(zhí)行某些命令的操作


    結(jié)構(gòu):

    

     for  i  in  值1  值2   值3   ...   值n

     do

          命令列表

     done


     例 : 編寫一個(gè)名為 /sh/mkdir.sh 的腳本文件 , 要求批量創(chuàng)建 /test/m1~/test/m6 這些目錄 , 腳本內(nèi)容如下 :

        Shell篇(2)-條件語句if及循環(huán)語句 for , while , unti

        運(yùn)行腳本 : 

        Shell篇(2)-條件語句if及循環(huán)語句 for , while , unti




 while循環(huán)語句:


    功能 : 在滿足條件時(shí) , 重復(fù)的執(zhí)行腳本中while語句中的 do 和 done 中間的命令循環(huán)體命令 ,直到條件不滿足時(shí)就停止循環(huán)


   語法格式:

     

     while   條件測(cè)試

     do

          命令循環(huán)體

     done 

  

    例 :在命令行中執(zhí)行命令 , 實(shí)現(xiàn)輸出10以內(nèi)的正整數(shù)

        Shell篇(2)-條件語句if及循環(huán)語句 for , while , unti


  while死循環(huán)(無限循環(huán)):

     

    語法格式 : 

    

     while  :

     do

          命令循環(huán)體

     done


    例 : 執(zhí)行如下while死循環(huán)語句,實(shí)現(xiàn)每隔2秒輸出echo命令的中的文本內(nèi)容。[按ctrl+c強(qiáng)制終止死循環(huán)]

        Shell篇(2)-條件語句if及循環(huán)語句 for , while , unti

        執(zhí)行語句后 , 系統(tǒng)會(huì)每隔2S輸出"I love you !"




  until循環(huán)語句:

    

     功能 : 和while意思相反 ,即重復(fù)的執(zhí)行腳本中until語句中的 do 和 done 中間的命令循環(huán)體命令 ,直到條件滿足時(shí)就停止循環(huán)


    語法格式:


     until   條件測(cè)試

     do

          命令循環(huán)體

     done


     例 : 在命令行中執(zhí)行如下操作,實(shí)現(xiàn)用until循環(huán)來輸出1~10這些數(shù)

         Shell篇(2)-條件語句if及循環(huán)語句 for , while , unti




  實(shí)例一 : 編寫 1 + 2 + 3 + 4 +  ..  +100 的和的腳本

        

        方法一 : 

        Shell篇(2)-條件語句if及循環(huán)語句 for , while , unti

        方法二 :

        Shell篇(2)-條件語句if及循環(huán)語句 for , while , unti

        方法三 : 

        Shell篇(2)-條件語句if及循環(huán)語句 for , while , unti

        方法四 : 

        Shell篇(2)-條件語句if及循環(huán)語句 for , while , unti




  嵌套循環(huán) :循環(huán)體中可嵌套多個(gè)循環(huán)


      例: 編寫九九乘法表

      Shell篇(2)-條件語句if及循環(huán)語句 for , while , unti

      

        

        

          


       

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI