我使用以下命令"nohup server &"
在Centos中运行服务器可执行文件。 现在我需要杀死进程"server"
。 但是我尝试了"ps -a"
命令来获得PID
但是我无法得到这个过程。 现在如何杀死"server"
呢?
ps auxwww|grep -i 'server'
应该返回所有在其中有server
进程。 否则,服务器可能已经停止。
您应该能够确定PID(并将其存储在一个文件中),如下所示:
nohup server & print $! >> my_server.pid
如果nohup.out文件被创建,你可以运行在bash中:
# lsof nohup.out
它会返回创建/运行该文件的pid
最好的祝福!
在ps
命令的帮助下,没有确切的方法来捕捉确切的过程,但可以使用以下方法:
ps -a | grep "server"
您将得到所有使用名称“server”运行的进程的列表
或者,也可以使用其他关键字来grep ps输出。
在centos中启动服务器的最好方法是使用服务命令。
所以service httpd start
有一个机会,你想写你的程序作为守护进程
守护进程(或服务)是设计为自主运行的后台进程,几乎不需要用户干预。 Apache Web服务器http守护进程(httpd)就是守护进程的一个例子。 它在后台监听特定端口,并根据请求类型提供页面或处理脚本。
见http://www.netzmafia.de/skripten/unix/linux-daemon-howto.html