shell 执行多条命令

本文介绍了在命令行中如何通过使用不同的连接符(;、&& 和 ||)来执行多个命令的方法。每种连接符都有其特定的作用:;用于依次执行命令而不考虑执行结果;&&确保所有命令成功执行;||则在前一命令失败时执行下一命令。
摘要由CSDN通过智能技术生成

在命令行可以一次执行多个命令,有以下几种:

1.每个命令之间用;隔开
说明:各命令的执行给果,不会影响其它命令的执行。换句话说,各个命令都会执行,
但不保证每个命令都执行成功。

2.每个命令之间用&&隔开
说明:若前面的命令执行成功,才会去执行后面的命令。这样可以保证所有的命令执行完毕后,执行过程都是成功的。
3.每个命令之间用||隔开
说明:||是或的意思,只有前面的命令执行失败后才去执行下一条命令,直到执行成功
一条命令为止。


例如:

>echo "pid=$$"; lsr; echo "pid=$$, exit Code=$?";
pid=14894
-bash: lsr: command not found
pid=14894, exit Code=127

上面3条命令,用分号连接,均被执行,但并不保证每条命令都执行成功。


>echo "pid=$$" && lsr && echo "pid=$$, exit Code=$?";
pid=14894
-bash: lsr: command not found

上面3条命令,用&&连接,会在命令执行出错的地方退出

>echo "pid=$$" || lsr || echo "pid=$$, exit Code=$?";
pid=14894
用||链接的3条命令,只有前一条命令执行不成功时,后面命令才会继续执行。


注意,上面3种方式,执行的3条命令,都是在同一个进程中执行的


shell中,您可以使用多种方式执行多条命令。 1. 使用分号 (;) 连接多个命令 您可以使用分号将多个命令连接在一起,从而在一行中执行多个命令。例如: ``` command1; command2; command3 ``` 这将依次执行command1、command2和command3。请注意,使用分号连接的多个命令将无条件执行,即使前一个命令执行失败。 2. 使用双与号 (&&) 连接多个命令 如果您希望只有在前一个命令成功执行后才执行下一个命令,则可以使用双与号连接命令。例如: ``` command1 && command2 && command3 ``` 这将只有在command1成功执行后才会执行command2,只有在command2成功执行后才会执行command3。 3. 使用双竖线 (||) 连接多个命令 如果您希望不管前一个命令是否成功都执行下一个命令,则可以使用双竖线连接命令。例如: ``` command1 || command2 || command3 ``` 这将在command1执行失败时执行command2,在command2执行失败时执行command3。 4. 使用括号和分号执行多个命令 您可以使用括号将多个命令组合在一起,并使用分号将它们连接在一起。例如: ``` (command1; command2) && command3 ``` 这将先执行command1和command2,然后只有在它们都成功执行后才会执行command3。 5. 使用管道执行多个命令 您可以使用管道将多个命令连接在一起,以便将一个命令的输出作为另一个命令的输入。例如: ``` command1 | command2 | command3 ``` 这将将command1的输出传递给command2,command2的输出传递给command3,以此类推。 这些是在shell执行多个命令的一些常用方式,您可以根据需要选择适合您的方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值