当前位置:   article > 正文

【tmux】终端复用器!让代码挂服务器后台执行_pip install tmux

pip install tmux

1 什么是tmux?

  • tmux (terminal multiplexer)是一种易用的终端复用器,简单来说,它允许我们在同一个终端窗口中创建多个不同的会话,支持同时执行不同的程序
  • 会话是指用户与计算机的交互(可以理解为正在运行的进程的载体),通常终端窗口和会话是 绑定 的,即关闭终端窗口会导致会话和进程中断
  • 使用tmux工具,可以有效地 解绑 终端窗口和会话,避免终端窗口被迫关闭导致的会话中断(也就是我们通俗讲的“代码挂服务器后台跑”,希望关机后继续跑代码~)

2 哪些场景用tmux?

  • 需要并行训练多个模型,而不想重复创建多个终端窗口
  • 远程连接服务器训练时,需要(主动/被动)关闭本地vscode(或者害怕突然停电关机!)
  • 希望在任何终端窗口中重新进入之前的会话中/允许同一个会话在不同终端窗口中连接
  • 支持同一终端窗口的拆分(纵向/水平均可)

3 基础操作介绍

3.1 安装tmux

安装tmux主要有两种方式,第一种将tmux当作一个系统的库安装,另一种是将tmux当作一个的Python的库安装:

# linux
sudo apt-get install tmux 

# mac
brew install tmux

# python (anaconda)
pip install tmux / conda install tmux
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

注意:所有的tmux快捷操作都需要先按ctrl+B,然后再按其他键!!!

3.2 创建tmux会话

用以下命令创建指定名称的会话:

tmux new -s <session-name>
  • 1

3.3 分离tmux会话

用以下命令分离会话与窗口:

tmux detach
ctrl+B D
  • 1
  • 2

执行后,就会退出当前tmux的窗口,但是会话和里面的进程仍然在后台运行。

3.4 查看tmux会话列表

用以下命令查看tmux所有存在的会话列表:

tmux ls
ctrl+B S
  • 1
  • 2

在这里插入图片描述

3.5 连接到tmux会话

用以下命令重新连接到指定的tmux会话:

tmux a -t <session-name>
  • 1

3.6 杀掉tmux会话

用以下命令kill tmux指定名称的会话:

tmux kill-session -t <session-name>
  • 1

3.7 切换tmux会话

用以下命令切换不同的tmux会话:

tmux switch -t <session-name>
  • 1

3.8 重命名tmux会话

用以下命令重命名指定的tmux会话:

tmux rename-session -t <old-name> <new-name>
ctrl+B $
  • 1
  • 2

3.9 窗口浏览

如果直接用鼠标或键盘方向键去浏览tmux窗口,会出现命令行乱码。所以,用以下命令在tmux会话窗口中进行上下浏览:

ctrl+B [

# 停止浏览
Q
  • 1
  • 2
  • 3
  • 4

3.10 拆分窗格(Pane)

用以下命令在tmux窗口中纵向/横向拆分窗口:

# 划分左右两个窗格
ctrl+B %

# 划分上下两个窗格
ctrl+B "
  • 1
  • 2
  • 3
  • 4
  • 5

3.11 窗格切换

# 光标切换到其他窗格中
ctrl+B <键盘方向键>
  • 1
  • 2

3.12 关闭窗口

ctrl+B X
y
  • 1
  • 2

学会了tmux的基本操作后,你就可以放心大胆地关闭你的vscode和电脑了!下次开机重新打开vscode连接服务器,然后进入tmux会话窗口中收获你的实验结果~

参考资料:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/65633
推荐阅读
相关标签
  

闽ICP备14008679号