linux下kill命令默认发出了信号是
-
SIGHUP(信号编号为1),该信号被用于重新初始化进程。
2年前 -
Linux下的kill命令默认发送的是TERM信号(Signal)。
1. TERM信号(15):该信号是让程序安全地终止,并进行一些清理工作。大多数进程都会捕获到该信号并以合适的方式退出。
2. HUP信号(1):该信号是挂起信号,通常用于通知进程重新加载配置文件。设备驱动程序在收到该信号时会重新读取配置文件。
3. INT信号(2):该信号是中断信号,由于用户按下”Ctrl+C”产生。发送INT信号会中断正在执行的进程,进程可以选择捕获该信号并进行相应处理。
4. QUIT信号(3):该信号类似于INT信号,只是在进程退出时会打印一些调试信息。
5. KILL信号(9):该信号是强制终止信号,它会直接终止进程,无法被捕获和处理。使用kill命令发送KILL信号会立即终止指定进程。
除了默认的信号外,kill命令还可以发送其他信号,比如:
– USR1信号(10)和USR2信号(12):这两个信号都是用户自定义信号,可以由进程根据需要进行捕获和处理。
– STOP信号(19):该信号会暂停进程的执行,进程会停止在当前位置等待。
– CONT信号(18):该信号会恢复已经暂停的进程的执行。
通过使用kill命令时,可以使用不同的选项来指定发送不同的信号给目标进程。例如,使用”-s”选项后跟信号名称来指定发送的信号,或使用”-SIGN”选项后跟信号数字来指定发送的信号。
2年前 -
在Linux系统下,kill命令用于向进程发送信号。默认情况下,kill命令发送的是SIGTERM信号(信号编号15),该信号要求进程正常终止,并且可以被捕获和处理。
kill命令的基本语法如下:
“`
kill [ -s 信号 | -信号 | –信号 ] 进程号或作业号
“`下面我们将从方法、操作流程等方面对kill命令的使用进行详细讲解。
## 方法一:通过进程号发送信号
1. 首先需要获取要发送信号的进程号。可以使用ps命令或者pgrep命令来获取目标进程的进程号。例如,要终止进程号为1234的进程,可以使用以下命令:
“`shell
$ ps -ef | grep 1234 #通过ps命令获取进程号
“`
或
“`shell
$ pgrep <进程名> #通过pgrep命令获取进程号
“`2. 使用kill命令发送信号。假设要终止进程号为1234的进程,可以使用以下命令:
“`shell
$ kill 1234
“`## 方法二:通过作业号发送信号
在Linux系统中,可以使用后台运行的作业来管理进程。作业号以%加数字的形式表示。有时在终止进程时,我们可能更愿意使用作业号而不是进程号。
1. 首先,使用jobs命令查看当前活动作业的列表和对应的作业号。例如:
“`shell
$ jobs
“`2. 根据目标作业的作业号,使用kill命令发送信号。例如,要终止作业号为%1的作业,可以使用以下命令:
“`shell
$ kill %1
“`## 指定信号类型
除了使用默认的SIGTERM信号,还可以使用kill命令发送其他类型的信号。可以使用-s选项、-信号选项或–信号选项来指定信号。例如,要发送SIGKILL信号(信号编号9):
“`shell
$ kill -s KILL <进程号或作业号>
$ kill -9 <进程号或作业号>
$ kill –signal KILL <进程号或作业号>
“`可以通过`kill -l`命令查看系统支持的所有信号类型及其编号。
综上所述,Linux下的kill命令默认发送的信号是SIGTERM(信号编号15),但也可以通过指定信号类型来发送其他类型的信号。
2年前