用 tmux 让终端会话断线也不中断:五分钟入门
【摘要】 在终端里运行一个耗时任务时,最怕网络断开或窗口关闭,任务跟着一起结束。tmux 的思路很直接:把终端会话放在服务端持续运行,客户端只是连接上去查看;断线后重新连接,会话和其中运行的程序都还在。 一、安装与检查在常见的 Linux 发行版上安装:# Debian / Ubuntusudo apt install tmux# RHEL / CentOSsudo yum install tmux安...
在终端里运行一个耗时任务时,最怕网络断开或窗口关闭,任务跟着一起结束。tmux 的思路很直接:把终端会话放在服务端持续运行,客户端只是连接上去查看;断线后重新连接,会话和其中运行的程序都还在。
一、安装与检查
在常见的 Linux 发行版上安装:
# Debian / Ubuntu
sudo apt install tmux
# RHEL / CentOS
sudo yum install tmux
安装后检查版本:
tmux -V
二、新建与重连会话
新建一个名为 demo 的会话:
tmux new -s demo
查看当前所有会话:
tmux ls
从会话中分离(会话继续在后台运行),按 Ctrl+b,松开后再按 d。重新连接:
tmux attach -t demo
# 只有一个会话时,直接执行 tmux attach 即可
结束指定会话:
tmux kill-session -t demo
三、常用快捷键
tmux 的快捷键大多以 Ctrl+b 作为前缀键,先按前缀键,松开后再按后面的键:
Ctrl+b d:分离当前会话Ctrl+b c:新建窗口Ctrl+b n/Ctrl+b p:切换到下一个 / 上一个窗口Ctrl+b 0-9:按编号切换窗口Ctrl+b %:左右分屏Ctrl+b ":上下分屏Ctrl+b 方向键:在分屏之间切换Ctrl+b x:关闭当前分屏Ctrl+b &:关闭当前窗口Ctrl+b [:进入复制模式(用方向键或 PageUp/PageDown 翻看输出,按q退出)Ctrl+b ::进入命令模式,可输入 tmux 命令
四、一个典型用法
- 通过 SSH 登录服务器,执行
tmux new -s build新建会话。 - 在会话中启动耗时命令,例如编译或下载。
- 按
Ctrl+b d分离,关闭本地终端也不会中断任务。 - 之后重新 SSH 登录,执行
tmux attach -t build,即可回到同一个会话查看进度。
五、需要注意的两点
- tmux 会话保存在运行它的那台机器上,机器重启后会话会消失,重要的长时间任务仍需妥善安排。
- 会话名用有意义的名字区分,例如按项目或任务命名,便于用
tmux ls管理多个会话。
掌握新建、分离与重连这三个动作,再记住几个分屏与切换窗口的快捷键,日常的远程终端工作就已经够用了。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)