首页 > 运维 > linux运维 > 正文

Linux后台任务控制教学_Linux jobs和nohup使用方法

冷炫風刃
发布: 2025-12-14 23:43:03
原创
818人浏览过
Linux后台运行任务需组合jobs、&、Ctrl+Z/bg/fg和nohup:jobs查看当前Shell作业;&启动后台,Ctrl+Z暂停后用bg/fg调度;nohup忽略SIGHUP并重定向输出,确保终端断开后持续运行。

linux后台任务控制教学_linux jobs和nohup使用方法

Linux中让任务在后台持续运行,关键靠 jobs 查看、nohup 保活、再配合 &Ctrl+Z / bg 灵活调度。不依赖终端、不被SIGHUP中断,才是真后台。

用 jobs 查看和管理当前 Shell 的作业

jobs 只显示当前 Shell 启动的、尚未结束的作业(包括暂停和运行中的),不跨会话、不查系统级进程。

  • jobs:列出所有作业,显示编号(如 [1])、状态(Running/Stopped)和命令
  • jobs -l:额外显示 PID,方便后续用 kill 操作
  • jobs -r:只显示正在运行的作业
  • jobs -s:只显示已暂停的作业

注意:关闭终端后,jobs 列表清空;它不等于 pstop,别用来找别人启动的进程。

用 & 和 Ctrl+Z 实现即时后台切换

交互式场景下快速“甩开”任务,靠组合键和符号:

  • 命令末尾加 &:直接以后台方式启动,例如 sleep 300 &,立刻返回提示符
  • 运行中按 Ctrl+Z:暂停当前前台任务,回到 Shell,此时任务处于 Stopped 状态
  • 输入 bg:把最近一个暂停的任务切到后台继续运行
  • 输入 bg %2:把作业编号为 2 的暂停任务放到后台运行
  • 输入 fg %1:把作业 1 拉回前台(常用于调试或等它结束)

这些操作都只是“Shell 作业控制”,一旦终端关闭,后台任务仍会被 SIGHUP 信号终止——除非你用了 nohup。

用 nohup 让任务彻底脱离终端生命周期

nohup 的核心作用是忽略 SIGHUP 信号,并自动重定向输出(stdout/stderr)到 nohup.out,确保断开 SSH 或关闭终端后进程继续跑。

Pinokio
Pinokio

Pinokio是一款开源的AI浏览器,可以安装运行各种AI模型和应用

Pinokio 232
查看详情 Pinokio
  • nohup command &:最常用写法,例如 nohup python3 server.py &
  • nohup command > out.log 2>&1 &:自定义输出文件,把 stdout 和 stderr 都写入 out.log
  • nohup command 不加 &:命令会在前台运行,但不怕终端断开;想释放终端,仍需手动加 &

注意:nohup 不等于守护进程,它不处理 PID 文件、不自动重启、不管理子进程。适合一次性长期任务,比如数据处理、临时 API 服务等。

补充技巧:结合 disown 和重定向提升健壮性

如果忘了加 nohup,但任务已在后台运行(比如用了 &),可以补救:

  • 先用 jobs 确认作业编号,如 [1]+ Running ./script.sh &
  • 执行 disown %1:从当前 Shell 作业表中移除该任务,使其不再受 SIGHUP 影响(效果类似 nohup,但不改输出重定向)
  • 若还需保存输出,建议提前用 > log.txt 2>&1 重定向,否则默认输出可能丢失或卡在缓冲区

另外,nohup 默认使用 nohup.out,如果多人共用账号或多个任务,记得用不同输出文件避免覆盖。

基本上就这些。jobs 看得见,& 和 Ctrl+Z 调得快,nohup 守得住——三者配合,Linux 后台任务就能稳稳跑下去。

以上就是Linux后台任务控制教学_Linux jobs和nohup使用方法的详细内容,更多请关注php中文网其它相关文章!

相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号