Linux一次执行多个命令& ; && ||区别

Linux一次执行多个命令& ; && ||区别


文章目录
1.一次执行多个命令,多个命令之间用;号隔开
2. 多个命令同时执行,用& (并行)
3. cmd1执行失败那就不要执行后面的命令(串行)
4. cmd1失败了才去指令后面的命令


1.一次执行多个命令,多个命令之间用;号隔开
cmd1; cmd2;cmd3
如:


cd /home/abc ; rm -rf ./test/*  ; rm -rf ./pos/* ; rm -rf ./logs/* ;


不管cmd1命令是否执行成功,cmd2命令都执行。
这样前后执行的时候没有依赖性。相互独立。
前一个命令执行完成,才会执行后一个命令。
注意:单行语句一般要用到分号来区分代码块,代码若写作多行,用换行符来区分代码块,则无需用到分号。

2. 多个命令同时执行,用& (并行)
cmd1&cmd2&cmd3
如:


cd /home/abc & rm -rf ./test/*  & rm -rf ./pos/* & rm -rf ./logs/* 


cmd1命令和cmd2命令同时执行

3. cmd1执行失败那就不要执行后面的命令(串行)
需要使用 && 来连接命令,cmd1 && cmd2 当cmd1执行成功,即cmd1执行成功的时候才执行cmd2,否则不执行cmd2
如:


cd  /home/abc  && sed -i "s/‘txt’/csv/g" kill.sh


4. cmd1失败了才去指令后面的命令
需要使用 || 来连接命令,cmd1执行失败的时候才执行cmd2
————————————————

                            https://blog.csdn.net/craftsman2020
                        
原文链接:https://blog.csdn.net/craftsman2020/article/details/109188620