Linux后台运行程序利器:screen新手入门笔记-深度学习推荐

部署运行你感兴趣的模型镜像

Linux后台运行程序利器:screen新手入门笔记

screen是Linux系统中一款实用的终端复用工具,它能让程序在后台持续运行,即使关闭终端或断网也不会中断进程。对于需要长时间运行代码(如深度学习训练、数据处理脚本)的用户来说,掌握screen可以避免因网络波动或误关窗口导致的任务失败。以下是零基础也能快速上手的核心操作指南。

一、创建后台任务的两种方法

方法一:直接后台启动(推荐新手)

无需进入交互界面,一步创建后台任务:

screen -dmS 任务名 bash -c "你的命令"

示例:创建名为"train_model"的后台任务,运行Python脚本

screen -dmS train_model bash -c "python /home/user/train.py"

此命令会在后台创建一个独立会话,即使关闭当前终端,train.py也会继续运行。

方法二:先创建会话再执行命令

适合需要在运行前配置环境(如激活虚拟环境)的场景:

  1. 创建并进入名为"test"的会话:

    screen -S test

  2. 在新窗口中执行命令(例如激活conda环境并运行程序):

    conda activate abc python /home/user/script.py

  3. Ctrl+a+d 快捷键返回原终端,此时程序已转入后台运行。

二、管理后台任务:查看、进入与退出

1. 查看所有后台会话

想知道当前有哪些screen任务在运行,输入:

screen -ls

输出示例

25515.test (2023年08月15日 09时18分20秒) (Detached)
22774.train (2023年08月15日 00时01分01秒) (Detached)

  • 左侧数字(如25515)是会话唯一ID
  • "Detached"表示会话处于后台;"Attached"表示已被当前终端占用
  • 中间名称(如test、train)是创建时自定义的任务名

2. 进入后台会话查看实时输出

当需要查看程序运行状态或输出日志时,用以下命令“唤醒”会话:

screen -r 任务名或ID

示例

  • 进入名为"train_model"的会话:screen -r train_model
  • 若同名会话较多,使用ID精确指定:screen -r 22774(见“查看会话”示例中的ID)

3. 退出会话返回原终端

在会话窗口中按 Ctrl+a+d,程序会继续在后台运行,你将回到最初的终端界面。

三、结束后台任务:停止程序或删除会话

方法一:正常停止程序(推荐)

  1. 先进入目标会话:screen -r 任务名或ID
  2. Ctrl+c 停止当前运行的程序
  3. 输入 exit 并回车,彻底关闭该会话

方法二:直接删除会话(强制终止)

若程序卡死或需彻底清理,可直接删除会话:

screen -XS 任务名或ID quit

示例:删除ID为22774的会话

screen -XS 22774 quit

此操作会直接终止会话内所有程序,建议仅在必要时使用。

四、避坑指南:同名会话的处理

若创建了多个同名会话(如重复执行screen -S test),screen -ls会显示类似结果:

25515.test (2023年08月15日 09时18分20秒) (Detached)
22774.test (2023年08月15日 00时01分01秒) (Detached)

此时无法通过名称区分,需用会话ID操作:

  • 进入ID为22774的会话:screen -r 22774
  • 删除ID为22774的会话:screen -XS 22774 quit

总结:screen核心命令速查表

操作命令示例
创建后台任务screen -dmS 任务名 bash -c “命令”
查看会话screen -ls
进入会话screen -r 任务名或ID
后台运行→返回原终端Ctrl+a+d
强制删除会话screen -XS 任务名或ID quit

screen的强大之处在于“会话独立于终端”,即使ssh断开连接,后台任务也能稳如泰山。刚开始使用时可能会记混快捷键,但记住screen -ls(查看)和screen -r(恢复)这两个核心命令,就能应对大部分场景。下次跑模型时,试试用screen解放你的终端吧!

您可能感兴趣的与本文相关的镜像

TensorFlow-v2.15

TensorFlow-v2.15

TensorFlow

TensorFlow 是由Google Brain 团队开发的开源机器学习框架,广泛应用于深度学习研究和生产环境。 它提供了一个灵活的平台,用于构建和训练各种机器学习模型

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值