色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          "); //-->

          博客專欄

          EEPW首頁 > 博客 > shell中的比較運算符 -eq -ne -gt -lt -ge -le 及 == != 與 邏輯運算符$$ || !

          shell中的比較運算符 -eq -ne -gt -lt -ge -le 及 == != 與 邏輯運算符$$ || !

          發(fā)布人:電子禪石 時間:2023-05-06 來源:工程師 發(fā)布文章

          shell中的比較運算符:

          -eq       //等于

          -ne       //不等于

          -gt        //大于 (greater)

          -lt         //小于 (less)

          -ge       //大于等于

          -le        //小于等于


          命令的邏輯關系:

          在 linux 中命令執(zhí)行狀態(tài):0 為真,其他為假  。

          $?  是顯示最后命令的退出狀態(tài),0 表示沒有錯誤,其他(比如1等)表示有錯誤

          ————————————————

          eg:

          shell中的邏輯運算符:

          邏輯與:    &&
          第一個條件為假時,第二個條件不用再判斷,最終結果已經(jīng)有;
          第一個條件為真時,第二個條件必須得判斷。
          邏輯或:    ||
          邏輯非:       !

           

          舉例1:


          echo $isDeploy
          if [ $isDeploy == true ]
              then echo 部署
          else
              echo 不部署
          fi

          效果:


          舉例2:

          [root@app ~]# response_code=$(curl -I -s www.baidu.com -w %{http_code}|tail -n1)
          [root@app ~]# echo ${response_code}
          200
          [root@app ~]# if [ $response_code == 200 ];then echo true; else echo false; fi
          true
          [root@app ~]# if [ $response_code == 201 ];then echo true; else echo false; fi
          false
          [root@app ~]# if [ $response_code -eq 201 ];then echo true; else echo false; fi
          false
          [root@app ~]# if [ $response_code -eq 200 ];then echo true; else echo false; fi
          true
          注意點:

          1. shell中如果是等于、不等于,既可以用 -eq、-ne (外面需要加中括號),也可以用 == 、!=(外面加中括號或雙括號都行)

          [root@app ~]# response_code=$(curl -I -s www.baidu.com -w %{http_code}|tail -n1)
          [root@app ~]# echo ${response_code}
          200
           
          //   等于
          [root@app ~]# if [ $response_code -eq 200 ];then echo true; else echo false; fi
          true
          [root@app ~]# if [ $response_code -eq 201 ];then echo true; else echo false; fi
          false
          [root@app ~]# if [ $response_code == 200 ];then echo true; else echo false; fi
          true
          [root@app ~]# if [ $response_code == 201 ];then echo true; else echo false; fi
          false
          [root@app ~]# if (( $response_code == 201 ));then echo true; else echo false; fi
          false
          [root@app ~]# if (( $response_code == 200 ));then echo true; else echo false; fi
          true
           
          //  不等于
          [root@app ~]# if [ $response_code -ne 200 ];then echo true; else echo false; fi
          false
          [root@app ~]# if [ $response_code -ne 201 ];then echo true; else echo false; fi
          true
           
          [root@app ~]# if [ $response_code != 200 ];then echo true; else echo false; fi
          false
          [root@app ~]# if [ $response_code != 201 ];then echo true; else echo false; fi
          true
          [root@app ~]# if (( $response_code != 200 ));then echo true; else echo false; fi
          false
          [root@app ~]# if (( $response_code != 201 ));then echo true; else echo false; fi
          true

          2. shell中如果是大于,大于等于,小于,小于等于,用 -gt, -ge,-lt,-le 的話,則需要加中括號。

          [root@app ~]# response_code=$(curl -I -s www.baidu.com -w %{http_code}|tail -n1)
          [root@app ~]# echo ${response_code}
          200
          [root@app ~]# if [ $response_code -gt 200 ];then echo true; else echo false; fi
          false
          [root@app ~]# if [ $response_code -ge 200 ];then echo true; else echo false; fi
          true
          [root@app ~]# if [ $response_code -lt 200 ];then echo true; else echo false; fi
          false
          [root@app ~]# if [ $response_code -le 200 ];then echo true; else echo false; fi
          true

          3. shell中大于、大于等于,小于,小于等于想用 >,>=,<,<=,則需要加雙括號,而不是中括號

          [root@app ~]# response_code=$(curl -I -s www.baidu.com -w %{http_code}|tail -n1)
          [root@app ~]# echo ${response_code}
          200
          [root@app ~]# if (( $response_code > 200 ));then echo true; else echo false; fi
          false
          [root@app ~]# if (( $response_code >= 200 ));then echo true; else echo false; fi
          true
          [root@app ~]# if (( $response_code < 200 ));then echo true; else echo false; fi
          false
          [root@app ~]# if (( $response_code <= 200 ));then echo true; else echo false; fi
          true


          原文鏈接:https://blog.csdn.net/wudinaniya/article/details/104796403


          *博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權請聯(lián)系工作人員刪除。



          關鍵詞: shell

          相關推薦

          技術專區(qū)

          關閉