tmux常用指令合集
tmux 的目的
通常远程连接linux服务器进行深度学习训练任务的时候,会使用终端ssh命令进行远程连接,开启训练任务,但是问题是,如果关闭了终端窗口,或者本地PC关机后,服务器的训练也就终止了。为了克服这个问题可以使用tmux
。
tmux的几个概念
session, window , pane 分别叫做会话,窗口,窗格 。
会话: 通常在终端中操作一个任务的时候,一旦终端关闭,任务也就结束了,被强制关闭了,在 tmux 中使用 session 就可以解决这个问题,可以把当前操作的任务隐藏起来,在视觉上让它消失,任务继续执行着,当想返回任务做一些操作的时候,它可以很方便的回来,通常将上面的操作就做 session 操作,可以把 session 给隐藏起来,也可以把 session 给真的关掉。
窗口和窗格: 可以这样要去理解窗口,当前呈现的这个工作区域就是一个窗口(当前的终端界面),窗口可以被不断切割,切割成一个个小块,一个个小块叫做窗格(pane),这就是窗口和窗格的概念,可以把它想象成一块大蛋糕可以切成很多小块蛋糕,窗口可以被分割成很多小的窗格。
总结: 一个 session 通常指一个任务里面可以有很多窗口,一个窗口又可以有很多的窗格。
tmux 的 session 常用操作
新建session
1.新建一个 session ,在终端输入一个 tmux 命令即可: tmux
2.默认是通过数字编号来命令的,有时候需要明确的知道 session 的名字,方便快速进入该 session ,可以使用如下的命令:tmux new -s <session-name>
快捷键: ctrl+b c
注意:进入tmux后快捷键才有用
离开session
1.当需要离开终端,操作其他的任务,而此时该任务继续在后台执行,需要在 tmux 的任何一个窗格中输入命令:tmux detach
快捷键: ctrl+b d
查看 session 列表
1.确认目前session有几个?输入命令:tmux ls
快捷键: ctrl+b s
进入 session
离开 session 之后,我们还需要对某个 session 进行操作,可以通过如下的操作:tmux attach -t <session-name>
不加-t
的话就进入tmux列表可以选择,其实更方便
关闭 session
如果需要关闭 session, 可以通过执行如下的命令即可:tmux kill-session -t <session-name>
快捷键: ctrl d
切换 session
执行命令,可以从当前的 session 快速切换到另一个 session:tmux switch -t <session-name>
其实我更喜欢另外一种:快捷键:ctrl+b w 窗口 上下选择 enter进入
重命名 session
tmux rename-session -t <old-session-name> <new-session-name>
快捷键: ctrl +b $
重命名当前的session
tmux 的窗格常用操作
切割窗格
tmux split-window 上下两窗格
tmux split-window -h 左右两窗格
切换窗格
ctrl +b o
窗格变大变小
ctrl +b 方向键-
中间分界线会发生移动
窗格删除
ctrl d
我最常用的
通常我的使用是:
1.输入tmux
进入session
2.输入任务
3. ctrl+b c
新建窗口输入第二个任务 --第三个第四个任务也是这样
4. ctrl+b w
查看不同任务,进入不同窗口
关闭终端,需要使用的时候在
tmux attach
进入tmux进行任务的选择和查看
更多命令可以看官网:
https://tmuxcheatsheet.com/
有帮助就点个赞呗