在 Linux 下,你可以使用 C 语言编写一个程序来捕获并处理 SIGHUP 信号
#include<stdio.h>#include <stdlib.h>#include<signal.h>#include <unistd.h>// 信号处理函数void handle_sighup(int signum) { printf("Received SIGHUP, ignoring...\n");}int main() { // 注册信号处理函数 signal(SIGHUP, handle_sighup); // 主循环,让程序持续运行 while (1) { printf("Program is running...\n"); sleep(5); } return 0;}要编译并运行此程序,请将代码保存到名为 sighup_example.c 的文件中,然后在终端中运行以下命令:
gcc sighup_example.c -o sighup_example./sighup_example现在,你可以在另一个终端中使用 kill 命令发送 SIGHUP 信号给这个程序。首先,找到程序的进程 ID(PID),然后发送信号:
ps aux | grep sighup_examplekill -HUP [PID]将 [PID] 替换为实际的进程 ID。程序将捕获 SIGHUP 信号并输出 “Received SIGHUP, ignoring…”。


