Xshell_7_快速命令栏导入包.zip
我们可以使用 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
快速命令栏添加一个快速命令,粘贴以上内容 使用 # 结尾 - 然后点一下鼠标,就能自动开启 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 #
0 条评论