采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
我在一个守护脚本中 调用了另一个脚本。守护脚本正常运行的时候,子脚本也正常运行,当守护脚本奔溃退出的时候,子脚本也会随之退出。那么有没有办法 ,守护脚本退出不影响被调起来的子脚本(即脱离父子关系)。
子脚本要放在后台运行才行,比如nohup sh 1.sh &,不知道你这样是要实现什的功能,这个思路有些问题……通常情况下,父脚本在运行的过程中调用子脚本获取一定功能,但父脚本死掉,子脚本也是需要随之死掉的,不然成僵尸进程了
比如nginx 的守护脚本,检测nginx 是不是挂掉。当nginx 挂掉,守护脚本会把它重新启动(这时,nginx作为子进程 再跑)。但是我不想守护脚本挂掉后(比如我杀掉他),nginx 进程也退出 。
子脚本 被调用后,可以看到 子脚本进程的父进程是 守护进程。能不能调用子脚本起来的服务进程 脱离 守护脚本存在呢
看来你对子进程的理解有误,所谓子进程是一个进程在运行过程中,会重新启动一个新的进程来维持正常运转……你这种情况,你在脚本中检测到nginx挂掉的话,启动nginx的命令需要放在后台运行,正常命令后面加&
登录后可查看更多问答,登录/注册
30%知识讲解+70%实例操作 掌握Shell脚本编程能力
1.0k 15
8.0k 11
1.5k 6
817 6
895 6