最近在使用ROS的时候,有时候需要启动多个终端,比如需要一个终端启动launch文件,还需要一个终端play数据集,比较麻烦,遂想通过一个脚本一次性启动多个终端,以跑个入门小乌龟为例,过程整理如下:

新打开一个终端的命令格式如下:

gnome-terminal -t "新终端标题" -x bash -c "执行的i命令;exec bash"
# gnome-terminal:新打开一个终端
# -t:给新终端命名加以区分,后面引号内输入终端标题
# -x:在新终端中想要执行的脚本
# exec bash:让打开的终端让执行完命令后不关闭

测试脚本内容

# 打印下测试信息
echo "test for the turtlesim..."

# 第一步:启动ROS节点管理器
gnome-terminal -t "start_ros" -x bash -c "roscore;exec bash"
# 睡眠1s
sleep 1s

# 第二步:启动小乌龟节点
gnome-terminal -t "start_turtlesim" -x bash -c "rosrun turtlesim turtlesim_node;exec bash"
# 睡眠1s
sleep 1s

# 第三布:启动键盘控制节点
gnome-terminal -t "start_keyboard" -x bash -c "rosrun turtlesim turtle_teleop_key;exec bash"

测试结果
小乌龟例子:
在这里插入图片描述
打开的终端:
在这里插入图片描述
虽然是基操,但还是比较有意思。。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐