Linux -- 作业控制进程
创始人
2024-05-28 22:16:28

作业控制 :

官方 : 作业控制是一个命令行功能,允许一个shell 实例来运行和管理多个命令。

作用 : 使用作业控制,可以选择性暂停,恢复,以及异步运行命令,让 shell 可以在子进程运行

期间返回接受其他命令。

前台进程 :

foreground :前台进程是在终端中运行的命令,该终端为进程的控制终端。前台进程接收键盘产

生的输入和信号,并允许从终端读取或写入到终端。

background :后台进程没有控制终端,它不需要与终端交互。

示例 :

前台进程 :

后台进程 :

===>>>

可以发现前台进程没法继续在命令行 执行命令 ,后台进程是可以继续执行命令的~!

查看后台进程 : Jobs

命令 Jobs :

✋ jobs 命令,就是用来查看当前终端放在后台的进程

✋ [ 1 ] [ 2 ] : 表示 作业 1,作业 2。 即 在后台有两个作业 。

✋ + : 表示最近被放到后台中的工作

✋ - : 表示最近第二个被放到后台中的工作

后台超过 三个工作,就不会有+ - 符号出现了~!!!

✋ Running : 表示该进程正在运行

stopped : 表示该进程已经停止

前后台进程相互调换 :

✋ 即把 前台进程放在后台去运行 ,或者,把后台进程放到前台去运行 ~!!

✋ 其实,主要是 介绍两个 命令 bg ; fg 。

前台进程放在后台去运行 :

✋ 这类问题,通常来讲,大家想想 : “ 前台进程要到后台去运行 ”

===>>>

那我最直接了当的,不就是直接让该进程去后台运行就完了嘛。

就比如现在要运行一个 ( sleep 300 )

那我直接加一个 & 不就行了

===>>>

直接 ( sleep 300 & ) 直接结束了呗~!!!

这是最直接了当的~!!!

前台进程到后台运行,我直接 & 就完了呗~!!!

该案例,就不列举了, & 的应用,过于简单,不示例~!!

===>>>

还有一种,就是该前台进程正在运行呢( 这一点其实才是想要说的那个例子 )

就是现在,前台正有个进程在运行着呢,现在需要把它转为 后台进程~!

===>>>

那就得先使用 发送信号量 ctrl + z 先给该进程暂停了

(自动就挂在后台进程了 )

然后使用 jobs 命令,查看后台进程;

查看完该进程在后台的 [ 编号 ] 之后,再使用 bg 命令 继续运行该进程~!

这样,该进程就从 前台进程正在运行 变为 后台进程 正在运行了~!!

其实,相当于是 让后台进程 继续在后台运行~!!!!!

示例 :

有 两个作业,一个是前台正运行,我们使用 ctrl z 给暂停 ( 后台挂起 )

一个是在后台正在运行~!!!!

显然 , [ 1 ] 是后台挂起, [ 2 ] 是后台正在运行~!!

现在,我们把后台挂起的 [ 1 ] 作业 继续让在后台运行~!!

( 这就是我们上面举得例子,让后台进程,继续在后台运行 )

===>>> bg 命令

执行完命令后,显然可以看到 提示 job 2 已经在后台了; 不过,我们执

行完该命令后,是让它继续在后台运行起来。

命令各式 : bg %( 进程所对应的 [ 编号 ] )

后台进程调到前台来执行 :

我们依旧以上面示例 :

现在调用 [ 1 ] 工作 到前台去执行 :

显然,我们把该进程调到前台来后,该进程立马执

行,终端即无法输入命令 ( 这是 sleep 的作用 )

我们使用的命令是 : fg %

使用 kill 命令 终止 工作 :

终止 工作 1 :

相关内容

热门资讯

上实资本科技基金张曙东:健康、...   12月6日,由中国证券报主办的2025科创投资大会在安徽合肥举行。在“构建双创融合生态促进科创投...
突发!俄罗斯发动大规模袭击,“... 据环球网援引乌克兰“Strana.ua”新闻网等媒体报道,乌克兰能源部6日称,俄罗斯使用无人机和导弹...
转发周知!2026征兵报名正式... 转自:四川在线2026年男兵应征报名通道今天(12月6日)正式开启。登录网址登录全国征兵网(http...
突发!部分业绩不佳基金经理或将...   中国财富  近日,《基金管理公司绩效考核管理指引(征求意见稿)》(以下简称《指引》)已经下发。 ...
一周文商旅速报(12.01—1... 首旅酒店:张淑娟因个人原因辞去副总经理职务11月30日,首旅酒店发布公告称,公司副总经理张淑娟女士因...