![为什么 sudo 会阻止捕获 SIGTSTP(Ctrl+Z)?](https://linux22.com/image/975678/%E4%B8%BA%E4%BB%80%E4%B9%88%20sudo%20%E4%BC%9A%E9%98%BB%E6%AD%A2%E6%8D%95%E8%8E%B7%20SIGTSTP%EF%BC%88Ctrl%2BZ%EF%BC%89%EF%BC%9F.png)
编写此程序是为了捕捉信号传输协议(Ctrl+ Z)并绕过其正常效果,打印一条消息并返回其正常操作,而不是允许其进程被暂停:
#include<stdio.h>
#include<signal.h>
void sigproc(void);
int main(void)
{
signal(SIGTSTP , sigproc);
while(1);
return 0;
}
void sigproc()
{
printf("CTRL + z");
}
不使用 sudo 时,程序运行正常。但是使用 sudo 启动时,程序无法按预期运行。