#每日Linux小练习#11作业命令继续分析

在对比中发现不同

1、进程作业的概念有所区别。一个正在执行的进程称为一个作业,而且作业可以包含一个或多个进程,尤其是当使用了管道和重定向命令。例如“nroff -man ps.1|grep kill|more”这个作业就同时启动了三个进程

2、作业和bash是相关的,在进行工作管理的行为中,其实每个工作都是目前bash的子进程,即彼此之间具有相关性。比如无法使用job control的方式由tty1的环境去管理tty2的bash。

前台作业和后台作业

只有前台程序可以接受终端输入,后台作业试图读终端,并不是一个错误,但是终端驱动程序会检测出来,然后发送一个特定信号SIGTTIN给后台作业,就会暂停后台作业。我们想要它运行,就必须转到前台来。前台后台转换的命令是:fg,bg。

1、在终端下,前台程序运行时,用户只能给该程序输入输出,如果需要给终端输入指令,是不可行的。需要将现在的前台程序终止或者暂停

2、后台程序无法接收终端的指令,需要转到前台才行

3、前台后台转换的命令是:fg,bg。

fg %1表示将1号作业转为前台,bg %4表示将4号作业转为后台。

fg - 表示将-号的那个工作号码取出来

4、kill命令可以管理后台中的工作

kill -signal %jobnumber

signal:

只有第9种信号(SIGKILL)才可以无条件终止进程,其他信号进程都有权利忽略。 下面是常用的信号:

HUP    1    终端断线

INT     2    中断(同 Ctrl + C)

QUIT    3    退出(同 Ctrl + \)

TERM   15    终止

KILL    9    强制终止

CONT   18    继续(与STOP相反, fg/bg命令)

STOP    19    暂停(同 Ctrl + Z)

echo "PID is $$"
echo "Start 20150813jobControl_test.sh"
./20150813jobControl_test.sh &
./20150813jobControl_test.sh &
./20150813jobControl_test.sh &
echo "Finish the test"

sleep 1
jobs

kill -9 %1
echo "kill -19 %1"

sleep 1
jobs

kill -18 %1
echo "kill -18 %1"

5、脱机管理

需要注意的是,工作管理中所谓的“后台”指的是终端机模式下可以避免 ctrl-C 中断的一个情境,并不是放到系统的后台去。

工作管理的后台依旧与终端机有关。

对于nohup前台运行的程序,如果在工作尚未结束的情况下脱机,该工作不会继续下去,而是被中断掉

对于nohup后台运行的程序,如果在工作尚未结束的情况下脱机,该工作会继续下去

nohup [命令与参数]          #在前台运行

nohup [命令与参数]  &      #在后台运行

时间: 2024-08-29 05:36:36

#每日Linux小练习#11作业命令继续分析的相关文章

#每日Linux小练习#12进程的详细分析

经常被问到进程和线程的区别,今天对进程进行详细的分析讨论. 一.进程的定义 进程是操作系统的概念,每当我们执行一个程序时,对于操作系统来讲就创建了一个进程,在这个过程中,伴随着资源的分配和释放.可以认为进程是一个程序的一次执行过程. 二.进程与程序的区别 程序时静态的,它是一些保存 在磁盘上得指令的有序集合,没有任何执行的概念. 进程是一个动态的概念,它是程序执行的过程,包括创建.调度和消亡. 三.linux系统中进程的表示 在linux系统中,进程由一个叫task_struct的结构体描述,也

Linux 小知识翻译 - 「命令行的提示符」

这次,聊聊关于「命令行提示符」的相关内容. bash之类的Shell程序是操作Linux所不可缺少的东西.其中bash的提示符也有承担了很重要的作用. 「命令行提示符」的英文是「command prompt」,其中「prompt」有促使,推动的意思,根据这个意思,Shell中的「命令行提示符」就有促使,推动用户输入的意思. (下面的说明以bash为例,bash是Shell程序的一种) 目前的Linux发行版中,提示符一般都像下面这样: [[email protected] /etc]$ 上面这个

基于linux与busybox的reboot命令流程分析

http://www.xuebuyuan.com/736763.html 基于Linux与Busybox的Reboot命令流程分析 *************************************************************************************************************************** 作者:EasyWave                                                

#每日Linux小练习#09 trap指令

在有些情况下,我们不希望自己的shell脚本在运行时刻被中断,比如说我们写得shell脚本设为某一用户的默认shell,使这一用户进入系统后只能作某一项工作,如数据库备份, 我们可不希望用户使用ctrl+C之类便进入到shell状态,做我们不希望做的事情.这便用到了信号处理. trap命令用来指定shell需要捕捉哪些Linux信号,以及如何处理这些信号.格式如下: trap commands signals 不同的signal之间用空格隔开,commands表示如何处理signals. ech

#每日LinuxShell小练习#02 tr命令的使用

对于文本操作,tr命令的作用很大.今天对tr功能进行初步学习. 1. tr的工作原理 tr命令不接受指定的文件参数,而只是对标准输入进行翻译 tr的命令格式是tr SET1 SET2,凡是在SET1中的字符,都会被替换为SET2中相应位置上的字符 2.简单的替换功能 tr 1 2 < ./material/20150804tr_height.txt tr ' ' '\11' < ./material/20150804tr_height.txt 3.对一系列字符进行处理 tr 'a-z' 'A-

#每日Linux小练习#06 Shell Script注意点总结

shell script优缺点分析 shell 使用的是外部的命令 与bash shell的一些默认工具,所以,它常常调用外部的函数库,因此,命令周期上面比不上传统的程序语言. 所以,Shell Script用在系统管理上面是很好的,但是在处理大量数值计算时,速度较慢. shell script编写的注意事项 1.如果一行内容太多,则可以使用 \[Enter] 来扩展至下一行 2.# 可以作为批注 如何执行Script 1.直接命令执行(要具有可读可执行的权限) 绝对路径,相对路径,变量PATH

每日linux命令学习-引用符号(反斜杠\,单引号&#39;&#39;,双引号&quot;&quot;)

引用符号在解析器中保护特殊元字符和参数扩展,其使用方法有3种:反斜杠(\),单引号(''),双引号(""). 单引号和双引号必须匹配使用,均可在解析器中保护特殊元字符和通配符,但是单引号(硬转义)主要用于信息的原样输出,防止任何变量的扩展,双引号(软转义)允许变量扩展.转义符和命令替换.单引号保护双引号,双引号保护单引号. 1. 反斜杠 反斜杠通过解析器将1个字符转化为引用符号或转义. 1)在单引号内使用反斜杠,反斜杠不会被解析,保持原样输出. 2)在双引号内使用反斜杠,主要用于美元符

我的常用linux小命令

这里并不是系统详细介绍每一个Linux命令,仅仅是记录本人在平时工作中经常用到的一些比较基础的命令及相关的参数,同时用了一些简单的例子来说明这些命令的用途,以及如何用多种命令来实现同一种功能. 1.ls命令 要显示当前目录下的文件列表时,我经常就使用ls命令的以下三个参数. -l 使用长列表格式 -h 文件大小以人可读的方式打印 -t 以最后修改时间排序,最新的放在最前 使用例子,如何显示当前文件夹下的目录? 方法1: ls -l | grep '^d' 方法2: ls -l | awk '/^

Linux 用户的 3 个命令行小技巧

Linux 用户的 3 个命令行小技巧 原文:http://www.tecmint.com/useful-linux-hacks-commands/作者: Avishek Kumar译文:LCTT  https://linux.cn/article-5635-1.html译者: goreliu Linux世界充满了乐趣,我们越深入进去,就会发现越多有趣的事物.我们会努力给你提供一些小技巧,让你和其他人有所不同,下面就是我们准备的3个小技巧. 1. 如何在不使用Cron的情况调度Linux下的任务