Linux–使用者管理(job control)
文章目录
- Linux--使用者管理(job control)
- 前言
- 一、任务管理(job control)
- 二、&
- 三、 将目前的任务丢到后台中暂停 -- ctrl+z
- 四、jobs -- 查看目前的后台任务状态
- 五、fg -- 将后台任务拿到前台来处理
- 六、bg -- 让任务在后台下的状态变为运行中
- 七、 kill -- 管理后台中的任务
- 总结
前言
任务管理是在bash环境下的,即当我们登录系统获取bash shell之后,在单一终端下同时执行多个任务的管理操作管理
,简单来说就是我登录bash后,想一边查找文件,一遍进行编译,一边复制文件等等。
一、任务管理(job control)
执行任务管理的操作中,其实每个任务都是目前bash的子进程,即彼此之间是有相关性的,我们无法用任务管理的方式由tty!的环境去管理tty2的bash。
- 这些任务所触发的进程必须来自于你shell的子进程(只管理自己的bash)
- 前台:可以控制于执行命令的这和环境称为你的前台的任务(foreground)
- 后台:可以自动执行的任务,你无法使用ctrl+c终止它,可以使用bg,fg调用该任务
- 后台中执行的进程不能等待terminal或者shell的输入,即无法进行人机交互
二、&
直接将命令丢到后台中执行 &,即在输入一个命令后,在该命令的最后加上一个
&
代表将该命令丢到后台中
把/etc/ 整个备份为/tmp/etc.tar.gz且不想要等待,并且利用数据流的重定向,将输出数据传送值某个文件中
job number只与当前bash环境有关,但是它是命令触发的东西,所以是一个进程,job number也搭配一个PID
三、 将目前的任务丢到后台中暂停 – ctrl+z
[1]代表这是第一个被丢到后台的任务,+代表最近一个被丢到后台的任务,且后台默认会使用该任务(与fg命令有关)
四、jobs – 查看目前的后台任务状态
jobs -l
查看目前的bash中所有的任务以及PID
我当前的bash中有两个任务,并且两个任务都是暂停的,如果我输入fg,那么将任务[3]拿到前台运行,因为+在任务[3]那儿
五、fg – 将后台任务拿到前台来处理
语法:
fg %[jobnunber]
六、bg – 让任务在后台下的状态变为运行中
语法:
bg %[jobnunber]
七、 kill – 管理后台中的任务
例子:
kill后面默认接的数字是PID,如果想管理bash中的任务,就要使用%+数字
这种形式
总结
本节介绍了job control、&、ctrl+z、jobs 、fg 、bg 、 kill 这些任务管理的相关概念以及命令,唐怡佳继续加油叭!!~