【Ubuntu】脚本自动化控制终端填充

1.sh脚本文件控制终端写入命令

在SLAM算法中,每次启动vins都需要起很多终端,尽管使用了超级终端Terminator可以终端内划分看起来更加便捷,但是每次起算法的命令还是要自己输入,已经被麻烦了两年了,今天突然想写写一个shell脚本来实现一个简单的自动化填充。

先创建一个muti_terminal_command.sh的脚本文件,可以用vim或者nano之类的(看不懂一点),我是用vsode中创建的。

powershell 复制代码
#!/bin/bash

# 启动终端模拟器
terminator &
sleep 0.5
# xdotool key Alt+m
# sleep 1

# 发送快捷键Ctrl+Shift+e来划分窗格(水平方向)
xdotool key Ctrl+Shift+e
xdotool key Ctrl+Shift+o
xdotool key Ctrl+Tab
xdotool key Ctrl+Shift+o

# 激活第一个窗格(左上角)并输入第一个命令
xdotool key Ctrl+Tab
xdotool type "roslaunch vins_estimator nova3.launch"
xdotool key Return
sleep 0.5 

# 激活第二个窗格(右上角)并输入第二个命令
xdotool key Ctrl+Tab
xdotool type "roslaunch vins_estimator vins_rviz.launch"
xdotool key Return
sleep 0.5

# 激活第三个窗格(左下角)并输入第三个命令
xdotool key Ctrl+Tab
xdotool type "rosbag play test.bag"

注意:这里我最大化了窗口命令:xdotool key Alt+m,是因为事先把最大化快捷键改成了Alt+m(需要再Ubuntu设置中改),如果没有修改的话,可以注释掉。

这样本身就已经节省很多时间了。

运行的时候只需要:

bash 复制代码
chmod +x muti_terminal_command.sh
./muti_terminal_command.sh
相关推荐
ltl7 小时前
纠删码原理与存储效率
linux
ltl7 小时前
MinIO 原理和架构:机制、AGPL 与上游 archived 风险
linux
林浩杨_8 小时前
linux搜索命令(grep+sed)
linux·命令模式
W.W.H.8 小时前
将驱动编译成模块并安装到rootfs
linux·物联网·wifi·rootfs·驱动
ltl8 小时前
io_uring 在生产环境翻车实录:内核 bug、资源泄漏和你不知道的限制
linux
ltl8 小时前
内存分配器擂台:jemalloc vs tcmalloc vs mimalloc vs glibc
linux
ltl8 小时前
Zero Copy 的肮脏秘密:在什么时候反而更慢
linux
我是小灰灰吖8 小时前
Ubuntu 22.04 安装 SSH 服务与远程调试环境配置指南
qt·ubuntu·ssh
数据知道8 小时前
宽字节注入、二次注入、堆叠注入:高级 SQLi 专题
linux·运维·安全·网络安全
童槿顏丶10 小时前
GitLab部署到Linux
linux·运维·gitlab