每條命令使用";"隔開(kāi),則無(wú)論前邊的命令執(zhí)行成功與否都會(huì)繼續(xù)執(zhí)行下一條命令
這里,故意將第二條命令中的echo多寫(xiě)了一個(gè)o,命令執(zhí)行出錯(cuò),但并不影響后續(xù)命令的執(zhí)行
可以這么想,如果用分號(hào)來(lái)間隔命令,就相當(dāng)于將命令分隔在了不同的行,無(wú)論前一行的命令成功或失敗,都不影響下一行命令的執(zhí)行。
$ echo 1; echoo 2; echo 3; echo 4
1
-bash: echoo: command not found
3
4
若命令間使用"&&"隔開(kāi),則只有前邊的命令執(zhí)行成功了再會(huì)繼續(xù)執(zhí)行后邊的命令
這里,故意將第二條命令中的echo多寫(xiě)了一個(gè)o,命令執(zhí)行出錯(cuò),echo 3便沒(méi)有執(zhí)行,因此echo4也沒(méi)執(zhí)行
$ echo 1 && echoo 2 && echo 3 && echo 4
1
-bash: echoo: command not found
若命令間使用"||"隔開(kāi),則只有前邊的命令執(zhí)行失敗了再回繼續(xù)執(zhí)行后邊的命令
這里echo 1執(zhí)行成功則沒(méi)有繼續(xù)執(zhí)行后邊的echo 2,繼而沒(méi)有執(zhí)行echo 3,echo 4
echo 1 || echo 2 || echo 3 || echo 4
1
這里echoo 1執(zhí)行失敗,因此開(kāi)始執(zhí)行echo 2,執(zhí)行成功,因而后邊的echo 3, echo4都沒(méi)執(zhí)行
echoo 1 || echo 2 || echo 3 || echo 4
-bash: echoo: command not found
2
根據(jù)以上規(guī)則分析幾個(gè)比較特殊的例子,也即混合了集中分隔符的例子
echo 1執(zhí)行成功了,緊接著后邊有兩個(gè)"||"因此echo 2, echo 3都沒(méi)執(zhí)行,后邊遇到了&&,而這之前的命令組合被認(rèn)為是執(zhí)行成功的,因此echo 4得以執(zhí)行
$ echo 1 || echo 2 || echo 3 && echo 4
1
4
echo 1執(zhí)行成功了,繼而執(zhí)行echoo 2,執(zhí)行失敗,因此 echo 3不被執(zhí)行,后邊遇到了"||",而知之前的命令組合被認(rèn)為是執(zhí)行失敗的,因此echo 4得以執(zhí)行
$ echo 1 && echoo 2 && echo 3 || echo 4
1
-bash: echoo: command not found
4
echo 1執(zhí)行成功了,繼而執(zhí)行echoo 2,執(zhí)行失敗,因此 echo 3不被執(zhí)行,后邊遇到了";",相當(dāng)于把后邊的命令放到了新行,這樣的話無(wú)論如何后邊的命令都會(huì)執(zhí)行,因此echo 4得以執(zhí)行
$ echo 1 && echoo 2 && echo 3 ; echo 4
1
-bash: echoo: command not found
4
echoo 1執(zhí)行失敗,后邊為"||"因此echo 2得以執(zhí)行,echo 2執(zhí)行成功,緊接著后邊有兩個(gè)"||"因此echo 3,echo 4沒(méi)有執(zhí)行,后邊遇到了&&,而之前的命令組合被認(rèn)為是執(zhí)行成功的,因此echoo5得以執(zhí)行,執(zhí)行發(fā)生錯(cuò)誤,因此echo 6沒(méi)有被執(zhí)行,但后邊是";",所以無(wú)論如何echo 7都會(huì)被執(zhí)行
$ echoo 1 || echo 2 || echo 3 || echo 4 && echoo 5 && echo 6 ; echo 7
-bash: echoo: command not found
2
-bash: echoo: command not found
7
以上這篇Linux 連續(xù)執(zhí)行多條命令的方法(推薦)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選