gpt4 book ai didi

linux - 如何知道进程是否设置为NOHUP?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:34:25 24 4
gpt4 key购买 nike

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

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

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

disown

bash-4.2$ jobs

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

disown -h

应该用来设置NOHUP。

编辑

我不认为链接 Find the Process run by nohup command帮助。这个问题与那个问题不同。

我要重申我的问题。我运行一个没有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}'

希望对你有帮助

关于linux - 如何知道进程是否设置为NOHUP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22030929/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com