linux - 如果脚本从另一个脚本开始,Bash 陷阱将不起作用

标签 linux bash signals

bash 脚本 a.sh:

...
trap "echo 'Got SIGQUIT';" SIGQUIT
...

bash 脚本 b.sh:

#!/bin/bash
./a.sh &
./a.sh &
./a.sh &

如果我从命令行启动“./a.sh &”,陷阱就会起作用。如果我在 a.sh 脚本上运行“./b.sh &”traip 将不再响应 SIGQUIT。

最佳答案

原来是和SIGQUIT有关。将其更改为 SIGUSR1,一切正常。

关于linux - 如果脚本从另一个脚本开始,Bash 陷阱将不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41719974/

相关文章:

linux - 使用cgo挂接syscall “fork”

linux - Linux 机器上禁用 Enter 键

c - 处理不完整的 write() 调用

linux - Bash - 对文件中的行进行排序

C++ 管理进程

java - 如何实现霍夫变换?

c - 死后用子进程替换父进程

linux - 如何在 Hudson 作业中以 root 身份执行命令行?

linux - Grep 具有一定字符数的行,包括换行符

bash - 在 mongodb 查询中嵌入 bash 变量