当 python 解释器收到 SIGTERM 信号时,是否可以抑制打印在 stderr 上的“终止”消息。我希望它安静地终止。
我尝试过使用不同的信号,例如 SIGINT,但在这种情况下,python 会打印出正在运行的脚本 Traceback 和“KeyboardInterrupt”消息。
“终止”由您的 shell 打印,请查阅 shell 手册以了解如何禁用它。至于SIGINT
,你居然能抓住这个!为避免打印 Traceback,只需将整个程序包装在
try:
do_stuff()
except KeyboardInterrupt:
pass
或注册一个信号处理程序,如下所示:如何在 Python 中捕获 SIGINT?