2012年4月23日星期一

获取 nohup 放置后台的程序的 PID

可以使用 nohup 将某一程序放置在后台一直运行,就像一个服务那样。

如果在一个脚本中这么做,想要获得被放置在后台的服务 PID 的话,可以这样做:

#!/bin/sh

Server=(my_server_1 my_server_2 ... )
for server in ${Server[*]}
do
    > ../Server_PID.now
    nohup ./$server &
    ps -elf | awk '$5=='$$' && $NF~/^\.\/'$server'$/ {print "'$server'",$4}' >> ../Server_PID.now
done

这样,每启动一个服务,那么该服务的服务名和 PID 就都被写入了 ../Server_PID.now 文件中。

没有评论:

发表评论

梦的记录 2025-05-17 早

梦,很多时候,也许很奇特,很深刻,但通常是,一醒即忘。 然而有的不是。 譬如这个梦,早上 6 点,我起床撒了泡尿。 回去继续睡,然后它就开始了。 我媳妇回老家了,带着孩子。她们应该是坐高铁回的,因为车还停在小区。因为一些事情,我没有跟着一起回。 媳妇说,你开车回吧。我试着开车,确...