在Linux系统管理和开发过程中,经常需要同时管理多个终端会话。tmux
和screen
是两款强大的终端复用工具,可以帮助用户在单个终端窗口中管理多个会话,支持会话的断开与重连。本文将详细介绍如何使用tmux
和screen
命令管理终端会话。
🧑 博主简介:现任阿里巴巴嵌入式技术专家,15年工作经验,深耕嵌入式+人工智能领域,精通嵌入式领域开发、技术管理、简历招聘面试。CSDN优质创作者,提供产品测评、学习辅导、简历面试辅导、毕设辅导、项目开发、C/C++/Java/Python/Linux/AI等方面的服务,如有需要请站内私信或者联系任意文章底部的的VX名片(ID:
gylzbk
)
💬 博主粉丝群介绍:① 群内初中生、高中生、本科生、研究生、博士生遍布,可互相学习,交流困惑。② 热榜top10的常客也在群里,也有数不清的万粉大佬,可以交流写作技巧,上榜经验,涨粉秘籍。③ 群内也有职场精英,大厂大佬,可交流技术、面试、找工作的经验。④ 进群免费赠送写作秘籍一份,助你由写作小白晋升为创作大佬。⑤ 进群赠送CSDN评论防封脚本,送真活跃粉丝,助你提升文章热度。有兴趣的加文末联系方式,备注自己的CSDN昵称,拉你进群,互相学习共同进步。
【Linux】使用tmux和screen命令管理终端会话
1. 📘 引言
tmux
和screen
都是终端复用器,允许用户在一个终端窗口中运行多个会话。它们的主要功能包括:
- 创建、分割和管理多个终端会话。
- 支持会话的断开与重连。
- 提供会话的命名和管理功能。
2. 🧩 使用tmux管理终端会话
2.1 安装tmux
在Debian/Ubuntu上:
sudo apt-get install tmux
在CentOS/RHEL上:
sudo yum install tmux
2.2 基本用法
2.2.1 启动tmux会话
tmux
2.2.2 创建命名会话
tmux new -s mysession
2.2.3 分离会话
按下Ctrl+b
,然后按d
键。
2.2.4 重新连接会话
tmux attach -t mysession
2.2.5 列出会话
tmux ls
2.2.6 结束会话
在会话中输入exit
命令或按下Ctrl+d
。
2.3 窗口管理
2.3.1 创建新窗口
按下Ctrl+b
,然后按c
键。
2.3.2 切换窗口
按下Ctrl+b
,然后按n
键(下一个窗口)或p
键(上一个窗口)。
2.3.3 分割窗口
水平分割:按下Ctrl+b
,然后按"
键。
垂直分割:按下Ctrl+b
,然后按%
键。
2.3.4 关闭窗口
按下Ctrl+b
,然后按&
键。
2.4 高级用法
2.4.1 保存和恢复会话
保存会话:
tmux list-sessions -F "#{session_name}" > tmux_sessions.txt
恢复会话:
while read session; do tmux new-session -d -s "$session"; done < tmux_sessions.txt
2.4.2 使用配置文件
创建或编辑~/.tmux.conf
文件,可以在其中定义tmux的配置和快捷键。
# 示例配置
set -g mouse on
bind r source-file ~/.tmux.conf \; display-message "Config reloaded!"
3. 🧩 使用screen管理终端会话
3.1 安装screen
在Debian/Ubuntu上:
sudo apt-get install screen
在CentOS/RHEL上:
sudo yum install screen
3.2 基本用法
3.2.1 启动screen会话
screen
3.2.2 创建命名会话
screen -S mysession
3.2.3 分离会话
按下Ctrl+a
,然后按d
键。
3.2.4 重新连接会话
screen -r mysession
3.2.5 列出会话
screen -ls
3.2.6 结束会话
在会话中输入exit
命令或按下Ctrl+d
。
3.3 窗口管理
3.3.1 创建新窗口
按下Ctrl+a
,然后按c
键。
3.3.2 切换窗口
按下Ctrl+a
,然后按n
键(下一个窗口)或p
键(上一个窗口)。
3.3.3 分割窗口
水平分割:按下Ctrl+a
,然后按S
键。
垂直分割:按下Ctrl+a
,然后按|
键。
3.3.4 关闭窗口
按下Ctrl+a
,然后按k
键。
3.4 高级用法
3.4.1 使用配置文件
创建或编辑~/.screenrc
文件,可以在其中定义screen的配置和快捷键。
# 示例配置
startup_message off
defscrollback 10000
hardstatus alwayslastline "%{= kG}%-Lw%{= kW}%50> %n%f* %t%{-}%+Lw%<"
4. 🧩 比较与选择
- tmux:功能强大,支持脚本化配置和高级窗口管理,适合需要复杂会话管理的用户。
- screen:相对简单,兼容性好,适合需要基本会话管理功能的用户。
5. 结论
通过本文的介绍,我们详细了解了如何使用tmux
和screen
命令管理终端会话。根据不同的需求和场景,可以选择合适的工具来高效管理多个终端会话。希望这篇文章能为您的终端会话管理提供帮助。如果您有任何问题或意见,欢迎在评论区留言讨论。