文档章节

第5章 脚本控制------------------------(作业控制、查看作业jobs命令、重新启动停止的作业)

henni_719
 henni_719
发布于 2017/04/22 17:19
字数 730
阅读 15
收藏 0

5.3 作业控制

         使用Ctrl+Z组合键停止shell运行中的作业。停止作业后,Linux系统会让用户终止或重启它。可以使用kill命令终止进程。重启停止的进程需要向它发送SIGCONT信号。

         重启、停止、终止和恢复作业的操作称为作业控制(job control)。使用作业控制可以完全控制进程以shell环境中运行的方式。

5.3.1查看作业

         作业控制的关键命令是jobs命令。jobs命令可以查看shell处理的当前作业

        

         脚本使用$$变量显示Linux系统分配给脚本的PID,然后进入循环,每次迭代间隔5秒。通过命令行节目启动第一个脚本,然后使用Ctrl+Z组合键停止它。接下来,使用&符号以后台进程方式启动另一个作业,并将该脚本的输出重定向到一个文件,以便不会在监视器上显示。

         作业启动之后,使用jobs命令查看分配给shell的作业。jobs命令即可以显示停止的作业也可以显示作业状态,还包括作业编号以及作业中使用的命令。jobs命令使用的一些不同参数:

        

         输出中的加号和减号。带有加号的作业被视为默认作业。如果命令行没有指定作业编号,则它应该是任何作业控制命令引用的作业。带有减号的作业实在处理完当前默认作业之后将成为默认作业的作业某一时间点,只能有一个带有加号的作业,也只能有一个带有减号的作业,无论shell中运行了多少作业。

    示例说明,当移除当前默认的作业后,排在下一个作业如何接管默认状态:

        

         在kill掉当前默认作业,之前带有减号的作业,变成了默认作业。

5.3.2重新启动停止的作业

         在bash作业控制下,能够以后台进程或前台进程的形式重新启动任何停止的作业。前台进程将控制正在处理的终端,因此谨慎使用特性。要以后台模式重新启动作业,可以使用带有作业编号的bg命令。bg命令格式:bg 作业编号

         bg命令操作实例:

        

         以后台模式重新启动作业,出现命令行界面提示符,能够继续处理其他命令。要以前台模式重新启动,可以使用带有作业编号的fg命令:fg 作业编号。

         fg操作实例:

        

         作业现在以前台模式运行,在作业完成无法使用命令行界面提示符。

© 著作权归作者所有

henni_719
粉丝 2
博文 466
码字总数 343938
作品 0
信阳
QA/测试工程师
私信 提问
哪里学Linux开发?作业怎么控制Jobs?

使用Ctrl+Z组合键停止shell运行中的作业。停止作业后,Linux系统会让用户终止或重启它。可以使用kill命令终止进程。重启停止的进程需要向它发送SIGCONT信号。 重启、停止、终止和恢复作业的操...

长沙千锋
2018/05/03
0
0
脚本运行控制

Linux通过信号在运行在系统的进程之间通信,用信号来停止启动及无条件终止进程。同样也可以用信号来控制shell脚本的运行。 1.Linux系统信号 Linux系统和应用程序可以生成30多个信号,最常见的...

Caishu
2016/05/20
170
0
12.2、linux作业管理、调整进程优先级

1、linux作业分类: 前台作业:foreground,通过终端启动,且启动后会一直占据终端 后台作业:background,可以通过终端启动,但启动后会转入后台,释放终端占用 作业可能包含多个程序,也可...

嘀充值成功
2017/12/25
0
0
Shell主要逻辑源码级分析 (2)——SHELL作业控制

版权声明:本文由李航原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/110 来源:腾云阁 https://www.qcloud.com/community 作业控制本身也是基于进程控...

偶素浅小浅
2016/11/01
34
0
10个linux 作业控制的bash 脚本示例

linux和unix都是多任务的操作系统,也就是说系统可以同时运行多个任务或者进程。下面我们来说一下在linux或者unix下用来处理多任务的作业控制命令。 什么是作业控制(job control)? 作业控制...

cntech
2014/05/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

JWT学习总结

官方 https://jwt.io 英文原版 https://www.ietf.org/rfc/rfc7519.txt 或 https://tools.ietf.org/html/rfc7519 中文翻译 https://www.jianshu.com/p/10f5161dd9df 1. 概述 JSON Web Token(......

冷基
30分钟前
2
0
AOP的学习(1)

AOP 理解AOP编程思想(面向方法、面向切面) spring AOP的概念 方面 -- 功能 目标 -- 原有方法 通知 -- 对原有方法增强的方法 连接点 -- 可以用来连接通知的地方(方法) 切入点 -- 将用来插入...

太猪-YJ
今天
4
0
一张图看懂亮度、明度、光度、光亮度、明亮度

亮度、明度、光亮度,Luminance和Brightness、lightness其实都是一个意思,只是起名字太难了。 提出一个颜色模型后,由于明度的取值与别人的不同,为了表示区别所以就另想一个词而已。 因此在...

linsk1998
昨天
8
0
Python应用:python链表示例

前言 python链表应用源码示例,需要用到python os模块方法、函数和类的应用。 首先,先简单的来了解下什么是链表?链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是...

python小白1
昨天
4
0
Source Insight加载源码

Source Insight是一个图形化的源代码查看工具(当然也可以作为编译工具)。如果一个项目的源代码较多,此工具可以很方便地查找到源代码自建的依赖关系。 1.创建工程 下图为Snort源代码的文件...

天王盖地虎626
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部