nohup 进程 pid 在新 shell 中不可见,但在旧 shell 中仍然可见

nohup 进程 pid 在新 shell 中不可见,但在旧 shell 中仍然可见

我打开 ssh 终端窗口 shell 并将其连接到我的服务器,然后运行以下命令:

nohup sleep 50000 &

当我运行时,ps我看到这个:

  PID TTY          TIME CMD
    1 ?        00:00:00 bash
   56 ?        00:00:00 sleep
  148 ?        00:00:00 ps

现在,虽然我仍然连接到第一个 shell 会话并使用与第一个会话相同的凭据,但我打开了到我的服务器的第二个 ssh 终端窗口 shell 并ps再次运行,我看到了以下内容:

  PID TTY          TIME CMD
    1 ?        00:00:00 bash
   86 ?        00:00:00 ps

如何在第二个 shell 会话中查看从第一个 shell 会话启动的 nohup 进程(假设我不知道 PID)?或者更一般地说,我如何查看在其他 shell/会话中启动的所有正在运行的 nohup 进程?

编辑:请注意,我还尝试使用 root 用户凭据打开一个新的 shell/会话,但在此处使用 ps 时我仍然看不到睡眠过程。

答案1

如果您ps从不同的 shell 运行,即使具有 root 权限,您也只能看到由该 shell 会话启动的进程。要查看由其他用户或在不同会话中启动的进程,请使用选项-a-e。看男人附言

scrot1

scrot2

相关内容