在我使用nohup启动它之后,如何监视仍在运行的作业(我猜是分离的?),退出服务器并重新登录?通常情况下,我使用作业-l来查看正在运行的内容,但这显示为空白.
解决方法
您需要了解
difference between a process and a job.作业由shell管理,因此当您结束终端会话并启动新会话时,您现在处于具有自己的作业表的Bash的新实例中.您无法从原始shell访问作业,但正如其他答案所述,您仍然可以查找和操作已启动的进程.例如:
$nohup sleep 60 & [1] 27767 # Our job is in the jobs table $jobs [1]+ Running nohup sleep 60 & # And this is the process we started $ps -p 27767 PID TTY TIME CMD 27767 pts/1 00:00:00 sleep $exit # and start a new session # Now jobs returns nothing because the jobs table is empty $jobs # But our process is still alive and kicking... $ps -p 27767 PID TTY TIME CMD 27767 pts/1 00:00:00 sleep # Until we decide to kill it $kill 27767 # Now the process is gone $ps -p 27767 PID TTY TIME CMD