如何测试 bash 交互式 shell 是否使用我通过“trap”设置的处理程序来处理信号?

如何测试 bash 交互式 shell 是否使用我通过“trap”设置的处理程序来处理信号?

在 bash 交互式 shell 中,当我运行trap命令(例如trap "echo You hit control-C!" INT)来设置信号处理程序时,是否会设置 bash 交互式 shell 处理信号的方式?

如何使用我通过设置的处理程序来测试 bash 交互式 shell 是否处理信号trap

是否可以测试ie生成信号

  • 在 bash 交互式 shell 中?
  • 在 shell 运行的终端模拟器中?

或者我必须从 bash 交互式 shell 外部或终端模拟器外部进行测试?

谢谢。

答案1

kill您可以通过使用向当前 shell 发送信号,从设置它的 shell 内部测试处理程序:

kill -INT $$

进行更改-INT以匹配您要测试的陷阱。

相关内容