三、信号

0.信号是什么?
1.使用 kill 命令发送信号到进程
(1)语法格式
kill [-signal] PID...
'''
功能: 终止进程。
参数:
① PID: 要终止的进程ID号,可以写多个,就可终止多个进程。
选项:
① -signal: 指定发送的信号。signal就是信号(可以写信号编号也可写信号名;
若没有指定信号,那么默认发送TERM终止信号。常见信号见下表)。
② -p:模拟发送信号。
③ -l:指定信号的名称列表。
返回值:
'''
① 常用信号及示例
信号编号 |
信号名 |
含义 |
1 |
HUP |
挂起信号。 |
2 |
INT |
中断信号。执行效果和在终端按下 Ctrl-C 键的效果一样。通常用来终止一个程序。 |
9 |
KILL |
杀死信号。 |
15 |
TERM |
终止信号。这是 kill 命令默认发送的信号类型。如果程序仍然有足够的“活力”来接受信号,那么它将被终止。 |
18 |
CONT |
继续运行信号。恢复之前接受了 STOP 信号的进程。 |
19 |
STOP |
暂停信号。该信号将使进程暂停,而不是终止。和 KILL 信号 类似,该信号不会被发送给目标进程,因此它不能被忽略。 |
Ⅰ.通过信号编号使用信号 HUP
xlogo &
# 运行 xlogo 程序,使其在后台运行。
kill -1 13456
# 使用kill命令给它发送 HUP 信号,也可写成kill -HUP 13456。

Ⅱ.通过信号名使用信号(包含SIG前缀)
xlogo &
# 通过使用 & 是xlogo程序在后台运行。
kill -INT 13601
========================
xlogo &
kill -SIGINT 13608

② 其它常用信号
信号编号 |
信号名 |
含义 |
3 |
QUIT |
退出信号。 |
11 |
SEGV |
段错误信号。 |
20 |
TSTP |
终端暂停信号。 |
28 |
WINCH |
窗口改变信号。 |
③ 查看更多信号
kill -l

⑥ 注意
2.使用 killall 命令发送信号给多个进程
(1)语法格式
killall [-u user] [-signal] name...
'''
功能: 给 指定程序 或 指定用户名 的多个进程发送信号。
参数:
① name
选项:
返回值:
'''
① 示例
xlogo &
xlogo &
killall xlogo

② 注意
四、更多与进程相关的命令
命令 |
描述 |
pstree |
以树状模式输出进程列表,该模式下显示了进程间的 父/子关系。 |
vmstat |
输出系统资源使用情况的快照,包括内存、交换空间和磁盘I/O。如果想要持续查看输出,可以在命令后面加上一个间隔时间(以秒为单位),命令将按间隔时间来动态更新显示内容(例:vmstat 9)。按下 Ctrl-C 终止输出。 |
xload |
用来绘制 显示系统时间负载情况 图形的一种图形化界面程序。 |
tload |
类似于 xload 程序,但是图形是在终端上绘制。按下 Ctrl-C 终止输出。 |