2
我使用Ant,它基本上是一个Java程序,用于在Solaris上启动ksh(test.ksh)脚本。在这个ksh中,调用另一个启动程序的ksh(test1.ksh)脚本,我希望这个程序可以继续运行。为什么我的子任务在ant任务中被杀死?
Ant目标看起来就像这样:
<target name="start.loading.data.Global">
<shellscript shell="ksh">./test.ksh</shellscript>
<sleep seconds="300"/>
</target>
的问题是,我发现当蚂蚁的目标完成,该计划已被杀害。 我已通过添加
<sleep seconds="300"/>
确认,因为从我的应用程序的日志,它可以运行约3分钟后,我补充睡眠,它可以运行约8分钟。
我在Ant脚本中使用
<parallel>
尝试,但没有奏效。 我也尝试使用nohup启动ksh,但没有奏效。
有什么建议吗? 如果可能的话,请解释一下shell的工作原理。
虽然你的问题在技术上是关于[unix.se]的话题,但它似乎主要是关于Ant,它是一个构建工具,因此它拥有更多的专业知识。所以你的问题已经转移到[so]。 – Gilles 2012-03-09 21:24:47
这听起来像你的shell脚本test1.ksh正在完成,而不是像你期待的那样无限期运行。也许你应该在shell脚本中发布代码,或者解释一些你正在尝试做的事情。从目前的描述来看,似乎是一个壳问题。 – 2012-03-09 22:26:44
您是否尝试在ksh文件名末尾添加'&':' ./ test.ksh& shellscript>',这是一个很长的过程,但它可能会起作用。 –
Michael
2012-03-26 15:43:48