trap命令用于保护文件不受Alt + f4的影响

时间:2013-04-12 13:18:39

标签: linux bash shell signals bash-trap

我想知道 Trap 命令是否用于保护文件不受 SIGKILL(ALT + F4)信号的影响。如果是,那么以下命令会这样做吗?

trap ~/Desktop/left.py SIGABRT

我试图中止试图关闭left.py的所有信号。

2 个答案:

答案 0 :(得分:1)

ALT + F4通常不会发送SIGKILL。如果您正在尝试阻止进程在其父shell窗口关闭时被杀死,则需要类似......

的内容
nohup ~/Desktop/left.py &

...捕获SIGHUP

或者您可以在脚本本身内捕获所有信号(SIGKILLSIGSTOP除外)。看一下Python signal模块。

答案 1 :(得分:0)

left.py的程序文本中,您可以执行以下操作:

trap "" INT

也就是说,在引发SIGINT时什么都不做。如果需要,您也可以使用TERM。我不确定你的平台上Alt + F4究竟引出了哪个信号,你也提到了SIGABRT和SIGKILL;你不能忽视SIGKILL。