一、Linux中的会话和作业
进程
进程:Linux自身运行的独立的程序
交互进程:由一个shell启动的进程,可以在前台运行,可以在后台运行
批处理进程:是一个进程序列,和终端没有联系
监控进程(守护进程):Linux 系统启动后,启动的进程,并且在后台运行
作业
作业:一个正在执行的进程,而且作业可以包含一个或多个进程
作业控制:控制正在运行的进程的行为。如:挂起一个进程,等一会再执行。这样用户就可以再多个作业之间切换。
命令
&:在目录后面使用该符号,可以让目录在后台执行
jobs:可以查看正在后台运行的作业
-l:除了列出作业号外,同时列出PID
-r:列出仅仅在后台运行的作业
-s:列出仅仅在后台暂停的作业
jobs举例:
1、查看当前在后台运行的作业:jobs
2、创建一个作业,并将其加入到后台:sleep 10000 &
3、查看当前在后台运行的作业:jobs
4、查看在后台运行的作业:jobs -l
5、查看在后台暂停的作业:jobs -s
sleep 10000:延迟几秒(延迟一万秒)
Ctrl +c:中断
Ctrl +z:挂起
比如:对日期进行操作:时间延迟五秒后在显示:date;sleep 5;date
1、查看当前日期:date
2、对当前日期延迟5秒:sleep 5
3、在查看日期:date
另外几种命令:
fg:将后台的命令调到前台来继续执行,不能放回后台了
% 作业编号 即:fg 作业编号
bg:将后台暂停的命令继续执行
% 作业编号 即:bg 作业编号
ps -j:显示当前作业进程信息
TGID:线程组 ID 号
SID:会话ID 号
二、信号
信号:传递给Linux进程的操作
kill -l:显示可以传递给Linux进程的所有信号
可以看到有64个信号,常用的有下面三个信号:
kill -9 PID : 杀死一个进程--强制
kill -15 PID:正常的方式终止一个进程
kill -2 可以control +c的操作是一样的
下图是杀死一个进程的实例
步骤:
1、创建一个进程:sleep 1000
2、挂起上面的进程:Ctrl + z
3、再创建一个进程,并放到后台:sleep 10000 &
4、查看当前进程:jobs -l
5、杀死pid号为6645的进程:kill -9 6645
6、查看进程状态:jobs -l,发现进程已被杀死