我们可以使用 tmux 的客户端-服务器模型(client-server model)来创建一个定制的脚本来自动地构建开发环境、分割窗口并运行程序。
tmux-docker.sh
#!/bin/bash
tmux new-session -d -s ssh # 后台新建一个session
tmux split-window -h # 切割窗口(左右)
tmux split-window -v # 切割窗口(上下)
tmux select-pane -t 0 # 选择0号窗口 # 发送命令
tmux send-keys "iptables -nvL DOCKER; docker ps -a" C-m
tmux select-pane -t 1
tmux send-keys "htop" C-m
tmux select-pane -t 2
tmux send-keys "docker exec -it nginx-php bash" C-m
tmux send-keys "cd /var/www/html" C-m
tmux send-keys "php i.php" C-m
tmux select-pane -t 0
tmux send-keys "echo;echo;echo -e ':: 登录tmux窗口: tmux a -t ssh 后台保持:tmux: Ctrl+b-d 关闭: Ctrl+d'" C-m
tmux a -t ssh # 登录tmux窗口
# tmux kill-session -t ssh # 停止后台session
- 如图
Xshell
快速命令栏添加一个快速命令,粘贴以上内容 使用 #r 结尾 - 然后点一下鼠标,就能自动开启 tmux 窗口和你想要的命令
tmux
和htop
需要提前安装apt install tmux htop
我们在一个堡垒机上,运行tmux,然后分别向其他受控制机器,发送合适的命令
tmux select-pane -t 1 # 窗口编号按实际变化
tmux send-keys "ssh [email protected]" C-m
tmux send-keys "cd /root; ls -1a" C-m
为了快速命令通用,我们先使用 tmux a -t ssh
登陆之前已有 tmux 服务,检查 $?
返回值判断是否存在名称 ssh
的旧session
#!/bin/bash
tmux a -t ssh
if [ $? == 1 ]; then
tmux new-session -d -s ssh # 后台新建一个session
tmux split-window -h # 切割窗口(左右)
tmux split-window -v # 切割窗口(上下)
tmux select-pane -t 0 # 选择0号窗口 # 发送命令
tmux send-keys "iptables -nvL DOCKER; docker ps -a" C-m
tmux select-pane -t 1
tmux send-keys "htop" C-m
tmux select-pane -t 2
tmux send-keys "docker exec -it nginx-php bash" C-m
tmux send-keys "cd /var/www/html" C-m
tmux send-keys "php i.php" C-m
tmux select-pane -t 0
# tmux send-keys "echo;echo;echo -e ':: 登录tmux窗口: tmux a -t ssh 后台保持:tmux: Ctrl+b-d 关闭: Ctrl+d'" C-m
tmux a -t ssh # 登录tmux窗口
# tmux kill-session -t ssh # 停止后台session
fi #r
- Xshell和tmux 文章标签
https://www.262235.xyz/index.php/tag/Xshell/
https://www.262235.xyz/index.php/tag/tmux/
相关推荐: Ubuntu/Debian/CentOS搭建Socks5代理一键脚本
说明Socks5属于明文代理,不要用于科学上网,否则会被阻断端口,可用于正常的跳板使用;比如SSH转发加速国外VPS的连接速度,特别是一些延迟高或者丢包高的VPS;使用Socks5转发后SSH就可以快速稳定的连接了,解决高丢包SSH断开的问题;支持支持系统De…
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
喜欢就支持一下吧
请登录后发表评论
注册