KornShell(ksh)脚本如何退出/终止从另一个ksh脚本启动的所有进程?退出所有被调用的KornShell(ksh)脚本
如果scriptA.ksh调用scriptB.ksh然后将下面的代码工作不够好,但有这个更好的解决办法?:
scriptA.ksh:
#call scriptBSnippet
scriptBSnippet.ksh ${a}
scriptB。 KSH:
#if error: exit this script (scriptB) and calling script (scriptA)#
kill ${PPID}
exit 1
要添加的复杂性,如果SCRIPTA调用scriptB什么它要求SCR iptC,那么如果在scriptC中出现错误,如何退出所有三个脚本?
scriptA.ksh:
#call scriptBSnippet
scriptBSnippet.ksh ${a}
scriptB.ksh:
#if error: exit this script (scriptB) and calling script (scriptA)#
kill ${PPID}
exit 1
scriptC.ksh:
#if error: exit this script (scriptC) and calling scripts (scriptA, scriptB)#
#kill ${PPID}
#exit 1
在感谢提前。
这些ksh脚本(scriptA,scriptB,scriptC)应尽可能分离,每个脚本应尽可能少地使用输入参数。此解决方案将需要添加输入参数... – javaPlease42
此解决方案绝对需要更多工作。 –
如果每个脚本都可以将自己放在同一个进程组(Pgid)中,那么这可能会起作用,那么有关如何做到这一点的任何见解? – javaPlease42