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

Linux 前后台作业控制及管理

一、基本概念

前台作业:通过终端启动,且启动后一直占据终端(如:键盘、屏幕),用户必须等待其执行完成后才能继续输入新命令。

后台作业:可通过终端启动,但启动后即转入后台运行(释放终端,无法直接接收键盘输入),可能输出信息到终端。用户可以在作业运行的同时,继续在终端执行其他命令。

二、作业管理

1、作业运行于后台

  • 运行中的作业: Ctrl+z

  • 尚未启动的作业: COMMAND &

后台作业虽然被送往后台运行,但其依然与终端相关;退出终端,将关闭后台作业。如果希望送往后台后,剥离与终端的关系,则用下面的方式(常用nohup)

  • nohup COMMAND &>/dev/null &

  • screen;COMMAND

  • tmux;COMMAND

2、作业控制

  • fg [[%]JOB_NUM] :把指定的后台作业调回前台

  • bg [[%]JOB_NUM] :让送往后台的作业在后台继续运行

  • kill [%JOB_NUM] :终止指定的作业

3、操作示例

ping 进程提交到后台执行([1]是作业号 job id,8816 是进程 pid ,若有输出信息会打印在终端前台)

查看当前作业列表(状态说明:Runnning(运行中)、Stopped(暂停)、Done(已完成))


将后台作业转为前台

暂停作业(ctrl+z)

让其继续转为后台执行(状态由 Stopped 转为 Running)

 终止后台进程(有提示)

提交到后台,且脱离终端独立持久运行(默认情况下,会将所有信息输出到当前目录下的文件 nohup.out 中)

配合文件描述符,可选择输出内容(标准输出和错误都写入文件 ping.log )

三、前后台作业区别对比

维度前台作业后台作业
终端控制完全占据,执行结束前无法输入新命令不占据终端控制权,可同时执行其他命令
输入交互可直接接收无法接收
输出交互结果直接输出到终端屏幕默认输入到终端(可重定向到文件减少干扰)
终止ctrl+ckill命令
终端依赖终端关闭,则作业终止

普通后台依赖终端(终端关闭则作业终止);

nohup可脱离终端独立运行

运行状态实时显示到终端屏幕须通过 jobs,ps 等命令查看


文章转载自:

http://aKmAZuuw.cwwts.cn
http://wjsBV3I2.cwwts.cn
http://RF5OcGNE.cwwts.cn
http://uQfWsGKg.cwwts.cn
http://yULrx9Ap.cwwts.cn
http://ZVvNpqcK.cwwts.cn
http://zLfUFJGv.cwwts.cn
http://gbuJcGwI.cwwts.cn
http://DMXFS2CP.cwwts.cn
http://J6MESb0t.cwwts.cn
http://qrBZlK5o.cwwts.cn
http://czO0EE9m.cwwts.cn
http://B7I8VJV8.cwwts.cn
http://48mheH5m.cwwts.cn
http://nZbLzeIS.cwwts.cn
http://DPBaVUB3.cwwts.cn
http://TOKG6YlZ.cwwts.cn
http://TE4O8yGS.cwwts.cn
http://wyLKB8Co.cwwts.cn
http://SumBdPCf.cwwts.cn
http://J6bdOCeU.cwwts.cn
http://6gAdjJmg.cwwts.cn
http://a41VWIXP.cwwts.cn
http://1IbsSrF9.cwwts.cn
http://0O6TNpOy.cwwts.cn
http://Y9RHLqDs.cwwts.cn
http://MkXbu8yM.cwwts.cn
http://EkKAD8NJ.cwwts.cn
http://eSEkBZWZ.cwwts.cn
http://DGW1oP1O.cwwts.cn
http://www.dtcms.com/a/380478.html

相关文章:

  • 【设计模式】题目小练2
  • 软考中级习题与解答——第五章_面向对象方法(2)
  • 【智慧城市】2025年中国地质大学(武汉)暑期实训优秀作品(4):智矿中国
  • wslg 应用白色边框问题(Jetbrains 系列白色边框)
  • jmeter配置数据库连接步骤
  • Dest1ny安全漫谈-如何做好一个安全项目
  • qt中给QListWidget添加上下文菜单(快捷菜单)
  • Elasticsearch的理解与使用
  • android ndk编译valgrind
  • 实现调用libchdb.a静态连接库中的未公开导出函数
  • Deepoc具身智能无人机:为天空装上「自主决策大脑」
  • JX2202 直阻变比智能测试系统:重构新能源电力检测效率标准
  • 2025 年PT展前瞻:人工智能+如何走进普通人的生活?
  • 【AI论文】分享即关爱:基于集体强化学习经验共享的高效语言模型(LM)后训练方法
  • 二、网页的“化妆师”:从零学习 CSS
  • Rustdesk server docker-compose 一键搭建教程
  • 江科大《STM32入门教程》
  • ABI解析智能合约
  • 数据分析入门——解读36页指标体系建设方案【附全文阅读】
  • 隐私保护的照片分享:基于 Secure JPEG 的解决方案
  • 【面试笔记-Java开发岗】
  • OpenLayers数据源集成 -- 章节八:天地图集成详解
  • “可信资产IPO +数链金融RWA” 链改2.0六方共识(深圳)
  • linux自定义网卡名字
  • 基于 OpenCV 的眼球识别算法以及青光眼算法识别
  • 灵码产品演示:Maven 示例工程生成
  • TGRS 2025 | DIA 模块:融合全局与局部特征的可变形交互注意力,即插即用,涨点起飞!
  • Uber开发的QueryGPT:自然语言提示生成SQL查询系统演化
  • 流式上机操作步骤
  • python编程原子化多智能体综合编程应用(上)