![交互式 bash 进程是否隐式向其作业发送除 SIGHUP 之外的任何信号?](https://linux22.com/image/145657/%E4%BA%A4%E4%BA%92%E5%BC%8F%20bash%20%E8%BF%9B%E7%A8%8B%E6%98%AF%E5%90%A6%E9%9A%90%E5%BC%8F%E5%90%91%E5%85%B6%E4%BD%9C%E4%B8%9A%E5%8F%91%E9%80%81%E9%99%A4%20SIGHUP%20%E4%B9%8B%E5%A4%96%E7%9A%84%E4%BB%BB%E4%BD%95%E4%BF%A1%E5%8F%B7%EF%BC%9F.png)
交互式 bash 进程是否隐式向其作业发送除 SIGHUP 之外的任何信号?隐含地,我的意思是不是作为用户请求向作业发送信号的结果。
答案1
kill
是的,通过搜索和killpg
中的调用可以找到许多实例jobs.c
在 Bash 源代码中。
exec
一个示例是运行时或 shell 退出时处理已停止的作业:shell 发送SIGTERM
和SIGCONT
所有停止的工作。
答案2
此外斯蒂芬说了什么,看起来当您发出 fg
orbg
命令或以其他方式恢复停止的作业时,bash 会向已停止的进程发送 SIGCONT。它发送一个 SIGSTOP对自己当你发出一个suspend
命令。