歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux 連續執行多條命令

Linux 連續執行多條命令

日期:2017/2/28 14:29:41   编辑:Linux教程

Linux 連續執行多條命令,每條命令使用";"隔開,則無論前邊的命令執行成功與否都會繼續執行下一條命令
這裡,故意將第二條命令中的echo多寫了一個o,命令執行出錯,但並不影響後續命令的執行
可以這麼想,如果用分號來間隔命令,就相當於將命令分隔在了不同的行,無論前一行的命令成功或失敗,都不影響下一行命令的執行。
$ echo 1; echoo 2; echo 3; echo 4
1
-bash: echoo: command not found
3
4

若命令間使用"&&"隔開,則只有前邊的命令執行成功了再會繼續執行後邊的命令
這裡,故意將第二條命令中的echo多寫了一個o,命令執行出錯,echo 3便沒有執行,因此echo4也沒執行
$ echo 1 && echoo 2 && echo 3 && echo 4
1
-bash: echoo: command not found

若命令間使用"||"隔開,則只有前邊的命令執行失敗了再回繼續執行後邊的命令
這裡echo 1執行成功則沒有繼續執行後邊的echo 2,繼而沒有執行echo 3,echo 4
echo 1 || echo 2 || echo 3 || echo 4
1
這裡echoo 1執行失敗,因此開始執行echo 2,執行成功,因而後邊的echo 3, echo4都沒執行
echoo 1 || echo 2 || echo 3 || echo 4
-bash: echoo: command not found
2

根據以上規則分析幾個比較特殊的例子,也即混合了集中分隔符的例子
echo 1執行成功了,緊接著後邊有兩個"||"因此echo 2, echo 3都沒執行,後邊遇到了&&,而這之前的命令組合被認為是執行成功的,因此echo 4得以執行
$ echo 1 || echo 2 || echo 3 && echo 4
1
4

echo 1執行成功了,繼而執行echoo 2,執行失敗,因此 echo 3不被執行,後邊遇到了"||",而知之前的命令組合被認為是執行失敗的,因此echo 4得以執行

$ echo 1 && echoo 2 && echo 3 || echo 4
1
-bash: echoo: command not found
4

echo 1執行成功了,繼而執行echoo 2,執行失敗,因此 echo 3不被執行,後邊遇到了";",相當於把後邊的命令放到了新行,這樣的話無論如何後邊的命令都會執行,因此echo 4得以執行
$ echo 1 && echoo 2 && echo 3 ; echo 4
1
-bash: echoo: command not found
4

echoo 1執行失敗,後邊為"||"因此echo 2得以執行,echo 2執行成功,緊接著後邊有兩個"||"因此echo 3,echo 4沒有執行,後邊遇到了&&,而之前的命令組合被認為是執行成功的,因此echoo5得以執行,執行發生錯誤,因此echo 6沒有被執行,但後邊是";",所以無論如何echo 7都會被執行
$ 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命令之cd http://www.linuxidc.com/Linux/2013-05/83948.htm

Linux命令之cat http://www.linuxidc.com/Linux/2013-05/83947.htm

Linux命令之alias/unalias http://www.linuxidc.com/Linux/2013-05/83946.htm

Linux命令解析:su root和su -root http://www.linuxidc.com/Linux/2013-04/82564.htm

Linux命令之 交互式輸入read http://www.linuxidc.com/Linux/2013-03/81594.htm

Copyright © Linux教程網 All Rights Reserved