1. 程式人生 > 其它 >Linux 連續執行多條命令的方法和區別

Linux 連續執行多條命令的方法和區別

Linux 連續執行多條命令的方法和區別

逐行命令執行

[root@aliyun ~]# echo 1;echoo 2;echo 3;echo 4
1
-bash: echoo: 未找到命令
3
4
#前一命令成功與否,都會繼續執行下一條命令

前一命令成功才會執行下一命令

[root@aliyun ~]# echo 1 && echoo 2 && echo 3 && echo 4
1
-bash: echoo: 未找到命令
#故意將第二條命令中的echo寫成echoo,命令執行出錯,echo 3便沒有執行,echo 4也不會執行

前一命令失敗才會執行下一命令

[root@aliyun ~]# echo 1 || echoo 2 || echo 3 || echo 4
1
#echo 1執行成功則沒有繼續執行後邊的echo 2,繼而沒有執行echo 3,echo 4
[root@aliyun ~]# echoo 1 || echo 2 || echo 3 || echo 4
-bash: echoo: 未找到命令
2
#echoo 1執行失敗,因此開始執行echo 2,執行成功,因而後邊的echo 3, echo4都沒執行

混合使用

[root@aliyun ~]# echo 1 || echo 2 || echo 3 &&  echo 4
1
4
#echo 1執行成功了,緊接著後邊有兩個"||",因此echo 2, echo 3都沒執行,後邊遇到了&&,而這之前的命令組合被認為是執行成功的,因此echo 4得以執行
[root@aliyun ~]# echo 1 && echoo 2 && echo 3 || echo 4
1
-bash: echoo: 未找到命令
4
#echo 1執行成功了,繼而執行echoo 2,執行失敗,因此 echo 3不被執行,後邊遇到了"||",而知之前的命令組合被認為是執行失敗的,因此echo 4得以執行
[root@aliyun ~]# echo 1 && echoo 2 && echo 3 ; echo 4
1
-bash: echoo: 未找到命令
4
#echo 1執行成功了,繼而執行echoo 2,執行失敗,因此 echo 3不被執行,後邊遇到了";",相當於把後邊的命令放到了新行,這樣的話無論如何後邊的命令都會執行,因此echo 4得以執行
[root@aliyun ~]# echoo 1 || echo 2 || echo 3 || echo 4 && echoo 5 && echo 6 ; echo 7
-bash: echoo: 未找到命令
2
-bash: echoo: 未找到命令
7
#echoo 1執行失敗,後邊為"||"因此echo 2得以執行,echo 2執行成功,緊接著後邊有兩個"||"因此echo 3,echo 4沒有執行,後邊遇到了&&,而之前的命令組合被認為是執行成功的,因此echoo5得以執行,執行發生錯誤,因此echo 6沒有被執行,但後邊是";",所以無論如何echo 7都會被執行