Linux的HUP,INT,KILL,TERM,TSTP中断信号区别为:键入不同、对应操作不同、启用不同。
一、键入不同
1、HUP中断信号:HUP中断信号是当用户键入
2、INT中断信号:INT中断信号是当用户键入
3、KILL中断信号:KILL中断信号是当用户键入
4、TERM中断信号:TERM中断信号是当用户键入
5、TSTP中断信号:TSTP中断信号是当用户键入
1、HUP中断信号:HUP中断信号的对应操作为让进程挂起,睡眠。
2、INT中断信号:INT中断信号的对应操作为正常关闭所有进程。
3、KILL中断信号:KILL中断信号的对应操作为强制关闭所有进程。
4、TERM中断信号:TERM中断信号的对应操作为正常的退出进程。
5、TSTP中断信号:TSTP中断信号的对应操作为暂时停用进程。
三、启用不同
1、HUP中断信号:HUP中断信号发送后,可以重新被用户再次输入恢复启用进程。
2、INT中断信号:INT中断信号发送后,不可以重新被用户再次输入恢复启用进程。
3、KILL中断信号:KILL中断信号发送后,不可以重新被用户再次输入恢复启用进程。
4、TERM中断信号:TERM中断信号发送后,可以重新被用户再次输入启用进程。
5、TSTP中断信号:TSTP中断信号发送后,可以重新被用户再次输入继续使用进程。
HUP 1 终端断线
INT 2 中断(同 Ctrl + C)
QUIT 3 退出(同 Ctrl + \)
TERM 15 终止
KILL 9 强制终止
CONT 18 继续(与STOP相反, fg/bg命令)
STOP 19 暂停(同 Ctrl + Z)
INT----是当用户键入时由终端驱动程序发送的信号.这是一个终止当前操作的请求.如果捕获了这个信号,一些简单的程序应该退出,或者允许自给被终止,这也是程序没有捕获到这个信号时的默认处理方法.拥有命令行或者输入模式的那些程序应该停止它们在做的事情,清除状态,并等待用户的再次输入.
TERM----是请求彻底终止某项执行操作.它期望接收进程清除自给的状态并退出
HUP---- 有两种解释.
1,他被许多守护进程理解为一个重新设置的请求.如果一个进程不用重新启动就能重新读取它的配置文件并调整自给以适应变化的话,那么HUP通常来触发这种行为.
2.HUP信号有时候又终端驱动程序生成,试图来"清除"("终止")跟某个特定终端相连的那些进程.例如:某个终端会话结束时,或者当调制解调器被挂断时,shell后台不接受HUP的信号的影响.有的的用户可以使用nohup来模仿这种行为.
QUIT和TERM类似----不同的是:它会生成内存转储
区别具体如下:
1、键入不同
①HUP中断信号:HUP中断信号是当用户键入时由终端驱动程序发送的信号。
②INT中断信号:INT中断信号是当用户键入时由终端驱动程序发送的信号。
③KILL中断信号:KILL中断信号是当用户键入时由终端驱动程序发送的信号。
④TERM中断信号:TERM中断信号是当用户键入时由终端驱动程序发送的信号。
⑤TSTP中断信号:TSTP中断信号是当用户键入时由终端驱动程序发送的信号。
2、对应操作不同
①HUP中断信号:HUP中断信号的对应操作为让进程挂起,睡眠。
②INT中断信号:INT中断信号的对应操作为正常关闭所有进程。
③KILL中断信号:KILL中断信号的对应操作为强制关闭所有进程。
④TERM中断信号:TERM中断信号的对应操作为正常的退出进程。
⑤TSTP中断信号:TSTP中断信号的对应操作为暂时停用进程。
3、启用不同
①HUP中断信号:HUP中断信号发送后,可以重新被用户再次输入恢复启用进程。
②INT中断信号:INT中断信号发送后,不可以重新被用户再次输入恢复启用进程。
③KILL中断信号:KILL中断信号发送后,不可以重新被用户再次输入恢复启用进程。
④TERM中断信号:TERM中断信号发送后,可以重新被用户再次输入启用进程。
⑤TSTP中断信号:TSTP中断信号发送后,可以重新被用户再次输入继续使用进程。
HUP是让进程挂起,睡眠
INT 中断(同 Ctrl + C)
kill 六亲不认的杀掉
term正常的退出进程
TSTP 停止位
而kill -15是正常杀掉? 他们三者之间有什么区别?谢谢! ctrl+c是终止当前在终端窗口中运行的命令或脚本, kill -9 pid,是不顾后果的强制终止(,