本文共 744 字,大约阅读时间需要 2 分钟。
对于经常在线上操作的人来说有一种烦恼,就是在操作过程中,有事离开了一下,电脑自动睡眠了,然后网络断开连接,这时候任务就要重新跑,很烦恼。
tmux可以解决这个问题。tmux可以看成虚拟屏幕,不受断网的影响。如果断网了,只重新连接屏幕就行了,虚拟屏幕上的文字都还在。tmux的常用命令如下:
tmux new -s session_nametux attach -t session_nametmux lsControl+B d: 暂时断开连接,正在执行的任务不会退出Control+B PageUp/PageDown:上下滚屏
如何用tmux提高工作效率呢?那就是在跳板机工作的时候自动开启tmux。我的工作方法是这样的。
首先在本地电脑上定义alias,将连接跳板机作为一个命令:alias gate='ssh xxx@xxx ~/opentmux.sh'
跳板机上~/opentmux.sh
的内容如下:
#!/bin/bash# 找出未连接的屏幕session_name=`tmux ls | grep -v attached | head -n 1 | egrep -o '^[^:]+'`# 如果找不到未连接的屏幕,就新建屏幕if [ -z "$session_name" ]; then tmux exit# 连接现有屏幕else tmux attach -t "$session_name" exitfi
这样,每次连接跳板机的时候自动寻找detach状态的屏幕,然后自动attach上。如果都是attach状态的,就新建一个窗口。
这样即使断网了,下次连接跳板机的时候,运行的任务都还在。对于经常在线上操作的可以不受断网的影响,极大的增强操作体验。转载地址:http://kvyub.baihongyu.com/