如何知道该过程是否设置了NOHUP



使用作业我知道进程正在运行。

bash-4.2$ jobs
[1]+  Running                 test.sh &

我希望它被设置为NOHUP,这样当我退出时它就不会被杀死。我用了

disown

bash-4.2$ jobs

什么也没显示。我不确定该过程是否设置为 NOHUP。我对此很好奇,因为在我阅读手册后,它说

disown -h

应该用于设置NOHUP。

编辑

我不认为链接 查找由nohup命令运行的进程 有帮助。这个问题与那个问题不同。

我要重申我的问题。我运行一个没有nohup的程序,后来我希望它被设置为NOHUP,这样当我退出系统时它就不会被杀死。所以我用了disown,但后来我发现手册上说我应该用disown -h来设置NOHUP。我想检查我的进程是否设置NOHUP成功。如果没有,我该怎么做才能将其设置为 NOHUP?

更新

我知道两种方式可以提供帮助:

1)每当一个进程运行在nohup它会在~/nohup.out上写入输出。因此,您可以通过运行命令 find -cmin 2 来检查此文件。它显示nohup.out是否每2秒更改一次。如果它正在更改,您将了解 sth 正在通过nohup命令运行,之后您可以使用lsof检查它并继续检查......

2)如果您从特定用户注销并转到tty然后执行ps aux | grep <user>ps aux | grep ?然后您可以了解正在使用nohup命令运行...因为没有 PTS,所以它会显示你 相反...

有用的命令:

ps aux | grep <program> | awk -F" " '{print $7}'

希望对您有所帮助

相关内容

  • 没有找到相关文章

最新更新