“父级”Bash脚本
bash Child &
wait
sleep 5; echo "Main end" >>log.txt
“儿童”剧本:
trap 'echo "Child end" >>log.txt;' ABRT
sleep 100
echo "Child end" >>log.txt
运行:bash Parent&
如何修改这些脚本以便“kill -ABRT”会使Child退出log.txt中的跟踪? 因此,Child忽略了这些信号。如果删除了第一行(陷阱),但是在“kill -ABRT”上没有在log.txt中留下任何痕迹。
答案 0 :(得分:1)
我不知道我是否得到你的问题,但你不能操作PID吗?您可以从变量$!
获取/打印出来。
bash child1 &; echo $!;
然后只是kill -ABRT that_pid
。
或者您想要杀死运行特定子脚本的进程吗?