tmux实现Linux下的终端复用

tmux实现Linux下的终端复用

Category
脱坑指南
Tags
Linux
Date
Last updated October 20, 2022
当通过SHH远程连接服务器训练模型或者运行程序时,如果断开SSH连接,当前操作也会停止运行,这样的操作很不优雅,我们可以通过tmux实现断开连接后仍然继续执行当前窗口的操作。tmux实际为一个终端复用软件,主要可以实现以下功能:
  1. 分屏
  1. 保护现场
  1. 会话共享

1. 安装tmux

ubuntu环境下可通过以下命令进行安装:
sudo apt-get install tmux

2. 常用命令

2.1 新建会话

新建时需要指定会话名称:
tmux new -s <session-name>
之后会直接进入新建的会话当中,并且新会话默认停留在当前目录。之后即使断开SSH连接,当前会话中的程序仍然会继续运行,不会停止。

2.2 重回会话

当我们重新连接SSH后,可以重新进入之前的会话查看运行情况:
tmux attach -t <session-name> tmux a -t <session-name>

2.3 退出当前会话

可以显示输入:
exit
或者快捷键Ctrl+d

2.4 查看所有会话

有两条命令均可查看:
tmux list-session tmux ls

2.5 关闭会话

会话中所有操作结束后需要关闭会话,可以指定关闭特定会话:
tmux kill-session -t <session-name>
也可以直接关闭所有会话:
tmux kill-server

2.6 切换会话

tmux switch命令用于切换会话,可以通过编号或者名称进行指定:
tmux switch -t <session-id> tmux switch -t <session-name>
后续更新进阶功能的配置