+ -
当前位置:首页 → 问答吧 → 进程后台运行疑惑

进程后台运行疑惑

时间:2011-07-20

来源:互联网

a.sh:
i=0
for ((i=0;i<50;i++))
do
echo $i
sleep 1
done

b.sh
a.sh > jobstest 2>&1 &



1、运行a.sh &          在终端退出后,进程会随着挂掉
2、运行nohup ./a.sh   在终端退出后,进程不会挂掉
3、运行b.sh             在终端退出后,进程不会挂掉

想知道是什么原因

作者: wanzijiali   发布时间: 2011-07-20

不是吧  1 情况下 不会掉吧

作者: lkk2003rty   发布时间: 2011-07-20

1情况肯定会掉`
第三个```不太明白为什么不会掉

作者: yangyang1581   发布时间: 2011-07-20

直接关掉终端 不要exit

作者: wanzijiali   发布时间: 2011-07-20

恩,我也是对第三个不明白

作者: wanzijiali   发布时间: 2011-07-20

我估计你退出终端时终端也关闭了吧
皮之不存,毛将焉附

./a.sh >log &
disown
这样再关闭终端就没事了

作者: ryh19860922   发布时间: 2011-07-20

回复 ryh19860922


我试了一下,不行
查了一下资料,不知道理解的对否
终端退出会发出 SIGHUP中断信号,在当前终端中的进程就会挂掉(1、挂掉)而nohup会阻止中断信号(2、运行)

第三个,还没有理解是怎么回事,感觉和子shell有 关系。。。

作者: wanzijiali   发布时间: 2011-07-20

热门下载

更多