Managing linux Shell Jobs
Managing Shell Jobs
When moving jobs between the foreground and background, it may be useful to have an overview of all current jobs. To get such an overview, use the jobs command. As you can see in Table 9.2 , this command gives an overview of all jobs currently running as a background job, including the job number assigned to the job when starting it in the background. These job numbers can be used as an argument to the fg and bg commands to perform job management tasks. In Exercise 9.1 , you learn how to perform common job management tasks from the shell.


一个很好的练习Jobs管理的实例:
Exercise 9.1 Managing jobs In this exercise, you apply the commands that you just learned about to manage jobs that have been started from the current shell.
1. Open a root shell and type the following commands:
sleep 3600 &
dd if=/dev/zero of=/dev/null &
sleep 7200
2. Because you started the last command with no & after the command, you have to wait 2 hours before you get control to the shell back. Type Ctrl+Z to stop it.
3. Type jobs . You will see the three jobs that you just started. The first two of them have the Running state, and the last job currently is in the Stopped state.
[root@rhel7 ~]# sleep &
[]
[root@rhel7 ~]# dd if=/dev/zero of=/dev/null &
[]
[root@rhel7 ~]# sleep 7200
^Z
[3]+ Stopped sleep 7200
[root@rhel7 ~]# jobs
[1] Running sleep 3600 &
[2]- Running dd if=/dev/zero of=/dev/null &
[3]+ Stopped sleep 7200
4. Type bg 3 to continue running job 3 in the background. Notice that because it was started as the last job, you did not really have to add the number 3.
[root@rhel7 ~]# bg
[]+ sleep &
[root@rhel7 ~]# jobs
[] Running sleep &
[]- Running dd if=/dev/zero of=/dev/null &
[]+ Running sleep &
[root@rhel7 ~]#
5. Type fg 1 to move job 1 to the foreground.
6. Type Ctrl+C to cancel job number 1 and use jobs to confirm that it is now gone.
7. Use the same approach to cancel jobs 2 and 3 also.
[root@rhel7 ~]# fg
sleep
^C
[root@rhel7 ~]# jobs
[]- Running dd if=/dev/zero of=/dev/null &
[]+ Running sleep &
[root@rhel7 ~]# fg
dd if=/dev/zero of=/dev/null
^C590233206+ records in
+ records out
bytes ( GB) copied, 372.251 s, MB/s [root@rhel7 ~]# jobs
[]+ Running sleep &
[root@rhel7 ~]# fg
sleep
^C
[root@rhel7 ~]# jobs
[root@rhel7 ~]#
8. Open a second terminal on your server.
9. From that second terminal, type dd if=/dev/zero of=/dev/null & .
10. Type exit to close the second terminal.
11. From the other terminal, start top . You will see that the dd job is still running. From top, use k to kill the dd job.
Managing linux Shell Jobs的更多相关文章
- linux —— shell 编程(文本处理)
导读 本文为博文linux —— shell 编程(整体框架与基础笔记)的第4小点的拓展.(本文所有语句的测试均在 Ubuntu 16.04 LTS 上进行) 目录 基本文本处理 流编辑器sed aw ...
- linux —— shell 编程(整体框架与基础笔记)
导读 关于shell编程基础的学习,网上有很多资源,如果在校图书馆应该也有一些教程,所以这里对于零碎的基础不做详细记录,而只是对一些常用的概念.命令与操作做一个简要的记录,以备方便查找. (本文所有语 ...
- Linux Shell基础(下)
Linux Shell基础(下) 目录 一.shell特殊符号cut命令 二.cut.sort.wc.uniq命令 三.tee.tr.split命令 四.简易审计系统 五.fork, exec, so ...
- Linux shell基础知识(上)
Linux shell基础知识(上) 目录 一.shell介绍 二.命令历史 三.命令补全和别名 四.通配符 五.输入输出重定向 六.管道符和作业控制 七.shell变量 八.环境变量配置文件 九.b ...
- Linux Shell脚本编程while语句案例
1,每隔3秒,打印一次系统负载 #!/bin/bash while true do uptime done 2,把监控结果保存到文件,在后台执行,然后用tail -f监控文件变化 ghostwu@de ...
- Linux shell下30个有趣的命令
Tips 原文作者:Víctor López Ferrando 原文地址:30 interesting commands for the Linux shell 这些是我收集了多年的Linux she ...
- LINUX任务(jobs)详解
LINUX任务(jobs)详解 在用管理员执行一个命令后,用Ctrl+Z把命令转移到了后台.导致无法退出root的. 输入命令:exit终端显示:There are stopped jobs. 解决方 ...
- Linux Shell编程与编辑器使用详解
<Linux Shell编程与编辑器使用详解> 基本信息 作者: 刘丽霞 杨宇 出版社:电子工业出版社 ISBN:9787121207174 上架时间:2013-7-22 出版日期:201 ...
- [转]Linux shell中的那些小把戏
我日常使用Linux shell(Bash),但是我经常忘记一些有用的命令或者shell技巧.是的,我能记住一些命令,但是肯定不会只在特定的任务上使用一次,所以我就开始在我的Dropbox账号里用文本 ...
随机推荐
- IDEA中添加各种依赖pom.xml文件内容
刚实习的小白,今天准备进入项目,纳尼,前辈把框架什么的都搭建好了,默默的抹了一把辛酸泪,刚刚接触自学框架的时候,添加依赖的时候总是各种问题,让前辈发给我之后,才发现人家写的代码相当优美了.下面就是前辈 ...
- Linux硬盘命名和安装分区
硬盘命名: 硬盘命名基于文件,一般有如下文件方式: /dev/hda1 /dev/sdb3 具体含义如下: /dev:是所有设备文件存放的目录. hd和sd:他们是区别的前两个字母,代表该分区所在的设 ...
- JavaScript-学习一_var
JavaScript 数据类型 字符串(String).数字(Number).布尔(Boolean).数组(Array).对象(Object).空(Null).未定义(Undefined). < ...
- 如何写angularJS模块
angularJS中提供模块的概念,供我们把代码封装在模块单元中,使用模块能给我们带来的好处 保持全局命名空间的清洁 易于在不同应用间复用代码 demo.html <!doctype html& ...
- javascript 判断是否是PC还是手机端
function IsPC() { var userAgentInfo = navigator.userAgent; var Agents = new Array("Android" ...
- DeDe内容调用img
文章内容页调用缩略图方法如下两种.第一种没有大小设置.原图显示.第二种.可以设大小, {dede:field.image/} <img src="{dede:field.litpic ...
- [转载]如何查看某个查询使用了多少TempDB空间
http://www.cnblogs.com/CareySon/p/3910337.html 通过下面脚本可以查看某个查询实用的TempDB的空间. 第一步是查询出当下TempDB实用空间是多少, 第 ...
- 深度学习“引擎”之争:GPU加速还是专属神经网络芯片?
深度学习“引擎”之争:GPU加速还是专属神经网络芯片? 深度学习(Deep Learning)在这两年风靡全球,大数据和高性能计算平台的推动作用功不可没,可谓深度学习的“燃料”和“引擎”,GPU则是引 ...
- keil c编译器错误与解决方法
1. Warning 280:’i’:unreferenced local variable 说明局部变量i 在函数中未作任何的存取操作解决方法消除函数中i 变量的宣告 2 Warning 206:’ ...
- Codeforces Round #312 (Div. 2) B.Amr and The Large Array
Amr has got a large array of size n. Amr doesn't like large arrays so he intends to make it smaller. ...