在Linux中,Ctrl+C是一个默认的中断信号(SIGINT),用于终止当前正在运行的进程
使用kill
命令发送信号:
你可以使用kill
命令向进程发送一个信号,以覆盖默认的中断行为。例如,要向进程ID为1234的进程发送忽略Ctrl+C的信号,你可以运行以下命令:
kill -SIGCONT 1234
这将使进程继续运行,忽略Ctrl+C中断。
在程序中捕获信号:
如果你有权限修改正在运行的进程,你可以在程序中捕获SIGINT信号并忽略它。在C语言中,你可以使用signal()
函数来实现这一点。例如:
#include <signal.h>
#include <unistd.h>
void ignore_ctrl_c(int sig) {
// Do nothing
}
int main() {
signal(SIGINT, ignore_ctrl_c);
while (1) {
// Your program code here
}
return 0;
}
这段代码将使程序在接收到Ctrl+C信号时继续执行,而不是终止。