久久国产乱子伦精品免费M,亚洲一区二区三区91,欧美国产在线视频,国产精品视频久久

Bash的&&,||邏輯運算

Bash的&&,||邏輯運算

bash里的true和false并不是我們通常所認為的0和1。 true和false是shell的內置命令,返回邏輯值。

$?是一個特殊的變量,存放有上一個程序的結束狀態。 在shell里面,把0作為程序是否成功結束的標志。

例如:

$ true
$ echo
$?
0
$ false
$ echo
$?
1

有時候,下一條命令依賴前一條命令是否執行成功。
如:在成功地執行一條命令之后再執行另一條命令,或者在一條命令執行失敗后再執行另一條命令等。
shell 提供了 && 和 || 來實現命令執行控制的功能,shell 將根據 && 或 || 前面命令的返回值來控制其后面命令的執行。

cmd1 && cmd2

  1. 若 cmd1 運行完畢且正確運行($?=0),則開始運行 cmd2。

  2. 若 cmd1 運行完畢且為錯誤 ($?≠0),則 cmd2 不運行。

cmd1 || cmd2

  1. 若 cmd1 運行完畢且正確運行($?=0),則 cmd2 不運行。

  2. 若 cmd1 運行完畢且為錯誤 ($?≠0),則開始運行 cmd2。

其實就是課堂上說的短路運算:
與運算,第一個為0,結果必定為0;第一個為1,第二個必須要參與運算; 或運算,第一個為1,結果必定為1;第一個為0,第二個必須要參與運算

驗證回傳值:

#!/bin/bash
true&&true; echo $?
true&&false; echo $?
false&&true; echo $?
false&&false; echo $?
true||true; echo $?
true||false; echo $?
false||true; echo $?
false||false; echo $?

[blog@localhost ~]$ sh test.sh

0
1
1
1
0
0
0
1

常用的條件判斷式

command1 && command2 || command3

如果command1成功運行,回傳$0,運行command2,||得到回傳值$0,command3不會運行;
如果command1運行失敗,command1 && command2 回傳$1,||得到回傳值$1,command3運行成功。

相關新聞

歷經多年發展,已成為國內好評如潮的Linux云計算運維、SRE、Devops、網絡安全、云原生、Go、Python開發專業人才培訓機構!

  • <menu id="dlktz"></menu>
    <ul id="dlktz"></ul>
    <menu id="dlktz"></menu>
    <bdo id="dlktz"></bdo>
    主站蜘蛛池模板: 印江| 三原县| 保山市| 云南省| 冕宁县| 囊谦县| 策勒县| 丽江市| 财经| 凭祥市| 凤台县| 隆子县| 尤溪县| 大理市| 巴青县| 合作市| 托克逊县| 察哈| 太白县| 旬阳县| 丹巴县| 浦江县| 阿合奇县| 垣曲县| 蕉岭县| 东安县| 嘉鱼县| 囊谦县| 黄石市| 百色市| 奈曼旗| 重庆市| 清苑县| 潍坊市| 遂平县| 昂仁县| 神木县| 方山县| 通江县| 武乡县| 阿勒泰市|