日期:2014-05-16  浏览次数:20541 次

关于Linux后台进程【nohup】
我在shell脚本中,使用nohup命令启动了一个进程,希望它能在后台执行,可是执行shell脚本后,发现使用jobs命令无法查看到我所启动的这个进程,用ps命令看到该进程的确被正常启动了。
请问:这种由一个进程(本例中是我的shell程序)控制启动的“nohup 后台进程”到底是不是在后台运行呢?
PS:之所以这么复杂地让shell来启动这个进程,是因为我需要一个守护进程来不断检查目标进程是否在正常执行,为了方便,就选择shell脚本的方式……

------解决方案--------------------
jobs 显示的应该只是当前shell中的任务

你通过shell脚本启动一个后台任务,可以在那个shell脚本中查看任务状态
在你的脚本最后添加一行
jobs -l
------解决方案--------------------
作业控制是将作业任务放在“终端机后台”,是跟终端机有关的注销后就没有了。nohup是放入“系统后台”,是和终端机无关的,终端机可以注销,这个应该是不一样的吧。
------解决方案--------------------
他们都说得很好。。。