当前位置: 首页 > article >正文

工具-screen-管理终端会话(服务器长时间运行任务)

screen 是一个用于管理多个终端会话的实用工具,常用于在单个终端窗口中运行多个虚拟终端。它允许用户在一个终端窗口中分离和重新连接会话,非常适合在远程服务器上工作或长时间运行任务时使用。


主要功能

1.会话管理

可以创建多个虚拟终端会话,并在这些会话之间切换。

即使断开与服务器的连接,会话仍会在后台运行。

2.会话分离与恢复

可以分离(detach)当前会话,稍后重新连接(reattach)到同一个会话。

非常适合在远程工作时保持任务运行。

3.多窗口支持

可以在一个 screen 会话中创建多个窗口,并在这些窗口之间切换。

4.会话共享

允许多个用户同时连接到同一个 screen 会话,适合协作工作。

5.日志记录

可以将终端输出保存到日志文件中。


常用命令

  1. 启动一个新的 screen 会话

    screen

    这会创建一个新的会话并进入其中。

  2. 创建命名会话

    screen -S session_name

    可以为会话指定一个名称,方便后续管理。

  3. 分离当前会话
    按下 Ctrl + A,然后按 D(Detach)。
    或者使用命令:

    screen -d
  4. 列出所有会话

    screen -ls

    这会显示所有正在运行的 screen 会话。

  5. 重新连接到会话

    screen -r session_name_or_pid

    通过会话名称或进程 ID 重新连接到会话。

  6. 创建新窗口
    按下 Ctrl + A,然后按 C(Create)。

  7. 切换窗口
    按下 Ctrl + A,然后按 N(Next)或 P(Previous)。

  8. 结束当前会话
    在会话中输入 exit 或按下 Ctrl + D

  9. 日志记录
    按下 Ctrl + A,然后按 H 开始记录日志。日志会保存到当前目录下的 screenlog.x 文件中。


示例场景

1.远程服务器任务

在远程服务器上启动一个长时间运行的任务(如编译或数据处理)。

使用 screen 启动会话,分离会话后断开连接。

稍后重新连接并恢复会话,查看任务进度。

2.多任务管理

在一个终端中创建多个窗口,分别运行不同的任务(如开发、测试、日志监控等)。

3.协作工作

多个用户连接到同一个 screen 会话,实时协作。


http://www.kler.cn/a/542391.html

相关文章:

  • 学习 URL 传参中哪些字符是支持的,哪些是不支持的
  • mosquitto配置桥接
  • 分布式服务框架 如何设计一个更合理的协议
  • 【JVM详解五】JVM性能调优
  • 人工智能学习(七)之神经网络
  • 《深度学习》——pytorch框架及项目
  • Redis存储⑥Redis五大数据类型之 Zset
  • MFC线程安全案例
  • 对JVM的错误理解与纠正
  • 解决虚幻Unreal Engine手动配置安卓打包环境后无法识别SDK问题
  • Express 中间件
  • VUE3项目结构说明
  • android studio开发科大讯飞最新版
  • 深入理解x86汇编:GNU格式的全面指南
  • 深入理解Java对接DeepSeek
  • 如何在WPF中实现软件内嵌效果
  • Baklib使数字化内容管理更加高效和便捷设计理念和实用案例解析
  • Linux 系统使用教程
  • 使用epoll与sqlite3进行注册登录
  • 基于ESP32的远程开关灯控制(ESP32+舵机+Android+物联网云平台)——下
  • linux部署nacos集群
  • 【Elasticsearch】derivative聚合
  • CSS 属性选择器详解与实战示例
  • 认识Electron 开启新的探索世界一
  • 香港服务器远程超出最大连接数的解决方案是什么?
  • android 指定跳转页面返回触发