第5章 脚本控制------------------------(作业控制、查看作业jobs命令、重新启动停止的作业)
2017-04-22 00:00
267 查看
5.3 作业控制
使用Ctrl+Z组合键停止shell运行中的作业。停止作业后,Linux系统会让用户终止或重启它。可以使用kill命令终止进程。重启停止的进程需要向它发送SIGCONT信号。重启、停止、终止和恢复作业的操作称为作业控制(job control)。使用作业控制可以完全控制进程以shell环境中运行的方式。
5.3.1查看作业
作业控制的关键命令是jobs命令。jobs命令可以查看shell处理的当前作业:![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/18/2110a3aa7974cfeb4ea29fe82ee8d018.jpg)
脚本使用$$变量显示Linux系统分配给脚本的PID,然后进入循环,每次迭代间隔5秒。通过命令行节目启动第一个脚本,然后使用Ctrl+Z组合键停止它。接下来,使用&符号以后台进程方式启动另一个作业,并将该脚本的输出重定向到一个文件,以便不会在监视器上显示。
作业启动之后,使用jobs命令查看分配给shell的作业。jobs命令即可以显示停止的作业也可以显示作业状态,还包括作业编号以及作业中使用的命令。jobs命令使用的一些不同参数:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/18/264dfd42ead0a25960e75cbfbce6fd4d.jpg)
输出中的加号和减号。带有加号的作业被视为默认作业。如果命令行没有指定作业编号,则它应该是任何作业控制命令引用的作业。带有减号的作业实在处理完当前默认作业之后将成为默认作业的作业。某一时间点,只能有一个带有加号的作业,也只能有一个带有减号的作业,无论shell中运行了多少作业。
示例说明,当移除当前默认的作业后,排在下一个作业如何接管默认状态:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/18/90b3e85ba7f327a38a8b75d1b3ad0022.jpg)
在kill掉当前默认作业,之前带有减号的作业,变成了默认作业。
5.3.2重新启动停止的作业
在bash作业控制下,能够以后台进程或前台进程的形式重新启动任何停止的作业。前台进程将控制正在处理的终端,因此谨慎使用特性。要以后台模式重新启动作业,可以使用带有作业编号的bg命令。bg命令格式:bg 作业编号bg命令操作实例:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/18/9c9ecfd2d41894fce13c804d2fdde6e3.jpg)
以后台模式重新启动作业,出现命令行界面提示符,能够继续处理其他命令。要以前台模式重新启动,可以使用带有作业编号的fg命令:fg 作业编号。
fg操作实例:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/18/91f17ca56ed168d9ff3b41ffa84aa6a7.jpg)
作业现在以前台模式运行,在作业完成无法使用命令行界面提示符。
相关文章推荐
- 第5章 脚本控制------------------------(作业控制、查看作业jobs命令、重新启动停止的作业)
- 第5章 脚本控制------------------------(作业控制、查看作业jobs命令、重新启动停止的作业)
- 第5章 脚本控制------------------------(at命令、mail命令、batch命令、cron表格、anacron表格)
- 第5章 脚本控制------------------------(nice与renice命令、进程优先级控制)
- 作业控制-jobs命令
- 作业控制命令jobs、bg、fg
- 自学Linux Shell15.2-作业控制命令(jobs/bg/nice/renice/at/atp/atrm/crontab)
- 第5章 脚本控制------------------------(at命令、mail命令、batch命令、cron表格、anacron表格)
- 第5章 脚本控制------------------------(nice与renice命令、进程优先级控制)
- 第5章 脚本控制------------------------(nice与renice命令、进程优先级控制)
- 第5章 脚本控制------------------------(at命令、mail命令、batch命令、cron表格、anacron表格)
- jobs、bg、fg 作业控制命令
- dos进程查看与停止命令分享(tasklist,taskkill)
- shell脚本控制jar的启动和停止
- IBM AIX系统硬件信息查看命令(shell脚本)
- CentOS Nginx的一个初始化脚本(用于启动、停止、查看状态)
- 重新启动postgre报错时,解决方案 ( 由备份文件占用空间太大造成 ) (linux 命令 df -h 查看磁盘空间)
- at 命令来安排命令、脚本或程序在指定的日期和时间运行。您也可以使用此命令查看现有的计划任务。
- 查看服务器RAID卡信息的SHELL脚本及MegaCLI命令介绍
- 如何查看服务器RAID卡信息的SHELL脚本和命令介绍