Linux命令:screen

screen 命令

基本介绍

screen 命令用于创建和管理多个终端会话,允许用户在单个终端窗口中运行多个命令,并且可以在会话之间切换,即使断开连接后也能保持进程运行。

资料合集:https://pan.quark.cn/s/6fe3007c3e95https://pan.quark.cn/s/561de99256a5https://pan.quark.cn/s/985f55b13d94https://pan.quark.cn/s/d0fb20abd19a

语法

复制代码
screen [选项] [命令]

常用选项

  • -S:创建一个指定名称的会话
  • -r:重新连接到一个已存在的会话
  • -d:分离一个会话
  • -ls:列出所有会话
  • -x:连接到一个正在运行的会话
  • -D:强制分离一个会话
  • -h:设置滚动缓冲区大小

使用示例

1. 创建一个新的会话

bash 复制代码
screen

2. 创建一个指定名称的会话

bash 复制代码
screen -S mysession

3. 列出所有会话

bash 复制代码
screen -ls

4. 重新连接到一个会话

bash 复制代码
screen -r session_id

5. 分离当前会话(快捷键)

bash 复制代码
Ctrl+a d

6. 连接到一个正在运行的会话

bash 复制代码
screen -x session_id

7. 在会话中创建新窗口(快捷键)

bash 复制代码
Ctrl+a c

8. 在窗口之间切换(快捷键)

bash 复制代码
Ctrl+a 数字键

9. 查看窗口列表(快捷键)

bash 复制代码
Ctrl+a "

10. 关闭当前窗口(快捷键)

bash 复制代码
Ctrl+a k

常用快捷键

  • Ctrl+a c:创建新窗口
  • Ctrl+a d:分离会话
  • Ctrl+a k:关闭当前窗口
  • Ctrl+a ":查看窗口列表
  • Ctrl+a 数字:切换到指定窗口
  • Ctrl+a n:切换到下一个窗口
  • Ctrl+a p:切换到上一个窗口
  • Ctrl+a Ctrl+a:切换到之前的窗口
  • Ctrl+a ?:显示帮助信息

会话管理

创建会话

bash 复制代码
screen -S session_name

分离会话

bash 复制代码
Ctrl+a d  # 快捷键
# 或
screen -d session_id

重新连接会话

bash 复制代码
screen -r session_id

强制分离并重新连接

bash 复制代码
screen -D -r session_id

终止会话

bash 复制代码
# 在会话中执行
exit
# 或
screen -X -S session_id quit

相关命令

  • tmux:功能类似的终端复用工具
  • nohup:使命令在后台运行,断开连接后继续执行
  • disown:使进程与终端分离
  • bg:将前台作业移至后台

注意事项

  • screen 会话在断开连接后会继续运行,适合长时间运行的任务
  • 可以通过 ~/.screenrc 文件自定义 screen 的配置
  • 在会话中运行的进程会随着会话的终止而终止
  • 可以使用 screen -X 向会话发送命令

总结

screen 命令是 Linux 系统中强大的终端复用工具,它允许用户在单个终端窗口中管理多个会话,并且可以在断开连接后保持进程运行。通过使用 screen,用户可以更有效地管理远程服务器上的长时间运行任务,提高工作效率。

相关推荐
一招定胜负2 小时前
在 Windows 11 家庭版安装 Docker Desktop解决虚拟化问题
运维·docker·容器
i建模2 小时前
Docker API 版本冲突问题
运维·docker·容器
Elastic 中国社区官方博客2 小时前
使用 TypeScript 创建 Elasticsearch MCP 服务器
大数据·服务器·数据库·人工智能·elasticsearch·搜索引擎·全文检索
Meya11272 小时前
告别机房 U 位管理内耗!这套系统让运维效率直接拉满 ✨
大数据·运维·人工智能
小义_2 小时前
【RH134总结】 八
linux·运维·服务器·云原生·红帽
nbsaas-boot2 小时前
AI编程的现实困境与未来路径:从“可用”到“可靠”的跃迁
java·运维·开发语言·架构
草莓熊Lotso3 小时前
MySQL 多表连接查询实战:内连接 + 外连接
android·运维·数据库·c++·mysql
17(无规则自律)3 小时前
深度剖析Linux Input子系统(1):宏观架构与核心原理
linux·嵌入式硬件
gordon~93 小时前
docker镜像安装
运维·docker·容器