news 2026/7/19 11:27:44

Linux命令-screen(终端复用器)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux命令-screen(终端复用器)

Linux命令-screen(终端复用器)

    • 快速参考
    • 安装 screen
    • 基本用法
    • 常用快捷键
    • 实际使用场景
    • screen 配置文件
    • 与 tmux 对比
    • 故障排查
    • 总结

快速参考

screen是终端复用器,允许在一个终端窗口中运行多个终端会话。它的核心功能是会话分离(detach)和恢复(attach),即使 SSH 连接断开,screen 中的程序仍然继续运行。这对于长时间运行的任务(编译、训练、下载等)非常有用。

对比 tmux:tmux 更现代、功能更丰富,但 screen 仍广泛使用。新项目推荐 tmux。

安装 screen

# Debian/Ubuntusudoaptinstallscreen# RHEL/CentOSsudoyuminstallscreen# Arch Linuxsudopacman-Sscreen# 验证安装whichscreenscreen--version

基本用法

# 创建新会话screen# 创建命名会话(推荐)screen-Swork# 分离会话(在 screen 中按快捷键)# Ctrl+A, d# 查看所有会话screen-ls# 恢复会话screen-r# 恢复指定会话screen-rwork# 强制恢复(如果会话被其他终端附加)screen-d-rwork# 杀死会话screen-X-Swork quit

常用快捷键

# 所有快捷键以 Ctrl+A 为前缀# Ctrl+A, c 创建新窗口# Ctrl+A, n 切换到下一个窗口# Ctrl+A, p 切换到上一个窗口# Ctrl+A, 0-9 切换到指定编号的窗口# Ctrl+A, " 显示窗口列表# Ctrl+A, w 显示窗口栏# Ctrl+A, d 分离会话(detach)# Ctrl+A, k 杀死当前窗口# Ctrl+A, A 重命名当前窗口# Ctrl+A, ? 显示帮助# Ctrl+A, [ 进入复制模式(滚动)# Ctrl+A, ] 粘贴# Ctrl+A, S 水平分割# Ctrl+A, | 垂直分割(需补丁)# Ctrl+A, Tab 切换分割区域# Ctrl+A, X 关闭当前分割区域

实际使用场景

# === 场景1:长时间运行任务 ===# 1. 创建 screen 会话screen-Straining# 2. 运行长时间任务python train_model.py# 3. 分离会话:按 Ctrl+A, d# 4. 查看所有会话screen-ls# 5. 恢复会话screen-rtraining# === 场景2:远程服务器维护 ===# 1. SSH 登录服务器sshuser@server# 2. 创建 screen 会话screen-Smaintenance# 3. 执行维护操作sudoaptupdate&&sudoaptupgrade# 4. 如果 SSH 断开,任务不会中断# 5. 重新连接后恢复screen-rmaintenance# === 场景3:多窗口工作 ===# 1. 创建会话screen-Sdev# 2. 创建多个窗口# Ctrl+A, c 创建新窗口# 窗口0:运行 vim 编辑代码# 窗口1:运行测试# 窗口2:查看日志# 3. 在窗口间切换# Ctrl+A, n 下一个窗口# Ctrl+A, p 上一个窗口# Ctrl+A, 0 切换到窗口0# === 场景4:与他人共享会话 ===# 1. 用户A创建会话screen-Sshared# 2. 启用多用户# Ctrl+A, :multiuser on# 3. 用户B加入sudoscreen-xuserA/shared

screen 配置文件

# 创建 ~/.screenrccat>~/.screenrc<<'EOF' # 关闭启动信息 startup_message off # 设置滚动缓冲区 defscrollback 10000 # 显示状态栏 hardstatus on hardstatus alwayslastline hardstatus string "%{.bW}%-w%{.rY}%n %t%{-}%+w %=%{.G} %H %{.Y} %Y-%m-%d %c " # 自动分离(SSH断开时) autodetach on # 设置编码 encoding UTF-8 # 设置默认 Shell shell /bin/bash # 新窗口自动执行 # screen -t "top" 0 top # screen -t "log" 1 tail -f /var/log/syslog EOF

与 tmux 对比

┌─────────────────────────────────────────────┐ │ 功能 │ screen │ tmux │ ├─────────────────────────────────────────────┤ │ 前缀键 │ Ctrl+A │ Ctrl+B │ │ 分割 │ 水平(需补丁)│ 水平+垂直 │ │ 状态栏 │ 需配置 │ 默认启用 │ │ 鼠标支持 │ 有限 │ 更好 │ │ 脚本化 │ 有限 │ 更好 │ │ 性能 │ 较好 │ 较好 │ │ 维护状态 │ 维护模式 │ 活跃开发 │ └─────────────────────────────────────────────┘

故障排查

# 问题1:screen -r 报错 "Attach with a suitable terminal"# 解决:指定终端类型TERM=xtermscreen-r# 问题2:screen -r 报错 "There is no screen to be resumed"# 解决:查看所有会话screen-ls# 问题3:无法滚动# 解决:进入复制模式# Ctrl+A, [ 然后使用方向键滚动# 按 Esc 或 Enter 退出# 问题4:screen 会话显示 "Attached"# 解决:强制分离再恢复screen-d-rsession_name

总结

核心价值screen是终端会话管理的经典工具,会话分离功能确保长时间任务不会因 SSH 断开而中断。

常用组合

  • screen -S name:创建命名会话
  • Ctrl+A, d:分离会话
  • screen -r name:恢复会话
  • screen -ls:列出所有会话

推荐:新项目优先使用 tmux,但 screen 在所有 Linux 系统上都可用,是可靠的备选。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/19 11:27:14

压缩技术的革命:当7-Zip遇见现代算法生态

压缩技术的革命&#xff1a;当7-Zip遇见现代算法生态 【免费下载链接】7-Zip-zstd 7-Zip with support for Brotli, Fast-LZMA2, Lizard, LZ4, LZ5 and Zstandard 项目地址: https://gitcode.com/gh_mirrors/7z/7-Zip-zstd 你是否曾经历过这样的困境&#xff1f;一个几十…

作者头像 李华
网站建设 2026/7/19 11:27:06

8051单片机开发入门:Keil环境搭建与GPIO实战

1. 为什么选择8051单片机与Keil环境 对于嵌入式开发初学者而言&#xff0c;8051单片机就像学习编程时的"Hello World"——它简单到足以让任何人理解底层原理&#xff0c;却又强大到能完成真实的控制任务。我在2008年第一次接触8051时&#xff0c;用P1口控制LED流水灯…

作者头像 李华
网站建设 2026/7/19 11:26:49

MaaYuan:代号鸢与如鸢游戏的终极自动化解决方案

MaaYuan&#xff1a;代号鸢与如鸢游戏的终极自动化解决方案 【免费下载链接】MaaYuan 代号鸢 / 如鸢 一键长草小助手 项目地址: https://gitcode.com/gh_mirrors/ma/MaaYuan 还在为每天重复的游戏日常任务而烦恼吗&#xff1f;你是否厌倦了每天花费大量时间在《代号鸢》…

作者头像 李华
网站建设 2026/7/19 11:26:00

AM64x/AM243x硬件防火墙配置实战:从寄存器解析到多核安全架构设计

1. 项目概述与核心价值在嵌入式系统开发&#xff0c;尤其是涉及多核异构、安全关键应用的场景里&#xff0c;硬件防火墙&#xff08;Hardware Firewall&#xff09;是构建系统安全基石的底层技术。它不像软件防火墙那样依赖操作系统调度&#xff0c;而是直接集成在SoC的互连总线…

作者头像 李华
网站建设 2026/7/19 11:24:21

iOS激活锁终极解决方案:免费解锁iPhone 6s-X设备的完整指南

iOS激活锁终极解决方案&#xff1a;免费解锁iPhone 6s-X设备的完整指南 【免费下载链接】applera1n icloud bypass for ios 15-16 项目地址: https://gitcode.com/gh_mirrors/ap/applera1n 你是否曾经面对被激活锁困住的iPhone设备感到束手无策&#xff1f;特别是那些搭…

作者头像 李华
网站建设 2026/7/19 11:24:05

解锁Koikatu游戏无限可能:200+插件整合补丁深度体验指南

解锁Koikatu游戏无限可能&#xff1a;200插件整合补丁深度体验指南 【免费下载链接】KK-HF_Patch Automatically translate, uncensor and update Koikatu! and Koikatsu Party! 项目地址: https://gitcode.com/gh_mirrors/kk/KK-HF_Patch 想要让《Koikatu》&#xff08…

作者头像 李华