【常用运维技巧】Linux一次执行多个命令

本文介绍了在Linux终端中如何执行命令的几种方式,包括后台执行、串行执行(成功执行、失败执行和成功失败都执行)以及利用管道进行命令间的数据传递。这些技巧能有效提高运维效率,实现命令的智能控制和流程自动化。


在实际运维场景中,经常需要在linux终端上执行多条命令来达到特定的目的,常用的方法有如下几种。

一、后台执行

在要执行的命令后面加上“&”这个符号,可以使命令在后台执行不占用当前的终端窗口。这样就能继续在终端窗口执行其他命令,提高运维操作和脚本执行效率。

代码如下(示例):

#创建a.sh和b.sh脚本并赋予执行权限

#!/bin/bash
#脚本a
echo "a脚本执行开始:`date '+%Y-%m-%d %T'`"
sleep 30s
echo "a脚本执行完成:`date '+%Y-%m-%d %T'`"

#!/bin/bash
#脚本b
echo "b脚本执行开始:`date '+%Y-%m-%d %T'`"
sleep 60s
echo "b脚本执行完成:`date '+%Y-%m-%d %T'`"

#执行
./a.sh &
./b.sh &

执行效果:
不使用后台执行脚本时要1分30秒。用后台执行时可并行,一分钟这样就执行完了。
在这里插入图片描述

二、串行执行

终端命令输入框可以使用特定的几个符号做分隔,串行执行多个命令。

1.成功执行

顾名思义,由于顺序是串行的,要执行命令的上一条命令执行成功了才会执行。用“&&”做分隔。

代码如下(示例):

#a.sh和b.sh的脚本参考一里面的

#执行
./a.sh && ./b.sh

执行效果:
上一条执行成功了才会执行下一条。
在这里插入图片描述

2.失败执行

顾名思义,由于顺序是串行的,要执行命令的上一条命令执行失败了才会执行。用“||”做分隔。

代码如下(示例):

#a.sh和b.sh的脚本参考一里面的

#执行,第一条命令A是无效命令,执行会报错失败
A || ./a.sh || ./b.sh

执行效果:
A这条指令执行失败了,执行a.sh这个脚本,a.sh脚本执行成功,条件不成立b.sh脚本就没执行了。在实际应用场景中,可以巧妙的做些设置,实现功能。如报错回滚等。
在这里插入图片描述

3.成功失败都执行

顾名思义,由于顺序是串行的,不管上一条命令的执行情况,一直按顺序执行。用“;”做分隔。

代码如下(示例):

#a.sh和b.sh的脚本参考一里面的

#执行,第一条命令A是无效命令,执行会报错失败
A ; ./a.sh ; ./b.sh

执行效果:
A这条指令执行失败了,执行a.sh这个脚本,a.sh脚本执行成功,执行b.sh这个脚本。不管上一条命令执行成功或失败都不影响下一条命令的执行。适用于那些都要执行,但相互没依赖的命令或脚本。
在这里插入图片描述

三、继承执行

使用场景很多。命令与命令间使用“|”做分隔,“|”表示管道,主要功能是把上一条命令的输出,做为下一条命令参数。

代码如下(示例):

#a.sh和b.sh的脚本参考一里面的

#执行,第一条命令A是无效命令,执行会报错失败
du -sh *|grep a.sh

执行效果:
查看当前文件夹下所有文件或目录的大小,把结果作为下条命令的参数,搜索出参数中包含“a.sh”的数据。
在这里插入图片描述

本篇文章完

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值