bash脚本之多终端同时运行

本文介绍了如何使用bash脚本在Linux中同时打开多个终端并异步执行命令,如`gnome-terminal`和`rosbagrecord`,以及如何设置命令的延迟启动和执行时间。

1、同时新建多个终端,同时开始执行

在想保存的位置打开终端,输入

nano run.sh

(run可更换为你想要保存的脚本名称)
编辑如下脚本指令

#!/bin/bash

gnome-terminal -- timeout 30s rosbag record -a

gnome-terminal -- timeout 30s play *40.mp3* 

( - - 后为你想要新建的终端执行的指令)
保存,继续在当前位置的终端下运行bash脚本即可

bash run.sh

或等待10秒后执行bash脚本

sleep 10 && bash run.sh

在这里插入图片描述

附:设置命令的延迟时间和执行时间

要设置 record -a 命令在10秒后执行,并在执行15秒后终止,可以使用一些脚本或命令行工具来实现。下面是一种可能的方式:
使用 sleep 命令延迟10秒钟后执行 record -a 命令:

sleep 10 && rosbag record -a

使用 timeout 命令设置 rosbag record -a 命令的运行时间为15秒:

timeout 15s rosbag record -a

综合起来,将以上两个命令结合起来,可以实现在10秒后执行 record -a 命令,并在执行15秒后终止:

sleep 10 && timeout 15s rosbag record -a
### 如何在终端运行 Bash 脚本文件 要在 Linux 终端中成功运行一个 Bash 脚本文件,需要遵循一系列步骤以确保脚本能正常执行。以下是具体的操作方法: #### 1. 创建Bash 脚本文件 使用 `touch` 命令创建一个的空文件作为脚本的基础结构。例如,创建名为 `myscript.sh` 的脚本文件: ```bash touch myscript.sh ``` #### 2. 编辑脚本文件 利用文本编辑器(如 `nano`, `vim` 或者其他偏好工具)打编辑刚刚创建的脚本文件。例如,使用 `nano` 编辑器: ```bash nano myscript.sh ``` 随后,在编辑器中输入实际的 Bash 脚本内容。一个基础的例子可能是这样的: ```bash #!/bin/bash echo "Hello, World!" ``` 这里的首行 `#!/bin/bash` 称作 shebang,用于指定该脚本应该由 `/bin/bash` 解释器来执行[^1]。 #### 3. 保存退出编辑器 依据所使用的编辑器不同,保存和退出的方式有所差异。如果是 `nano`,则通过按下 `Ctrl + O` 键盘组合保存更改,用 `Ctrl + X` 退出编辑模式。 #### 4. 设置脚本为可执行 为了让操作系统能够识别这个文件作为一个可执行程序,必须赋予它执行权限。这一步骤可通过 `chmod` 命令完成: ```bash chmod +x myscript.sh ``` 这条命令将向 `myscript.sh` 文件添加执行权限[^3]。 #### 5. 执行脚本 最后,切换至包含脚本文件的工作目录,然后通过以下方式运行脚本: ```bash ./myscript.sh ``` 如果一切设置正确,终端应当显示出 `"Hello, World!"` 的输出结果。 此外,也可以直接通过 Bash 显式调用脚本来忽略执行权限的要求: ```bash bash myscript.sh ``` --- ### 注意事项 - **路径确认**:确保脚本所在位置与当前工作目录一致,或者提供绝对路径。 - **错误处理**:如果有任何语法或逻辑上的问题存在于脚本内部,终端通常会返回对应的错误信息以便调试修正。 - **复杂任务支持**:随着需求的增长,Bash 脚本可以集成更多高级特性,诸如条件判断、循环控制以及函数定义等,从而实现高度自动化的流程管理[^1]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LW++

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值