我使用以下命令"nohup server &"
在Centos中运行服务器可执行文件。现在我需要杀死进程"server"
。但我尝试"ps -a"
命令来获取PID
,但我无法得到这个过程。现在如何杀死"server"
?
答案 0 :(得分:15)
ps auxwww|grep -i 'server'
应该返回其中包含server
的所有进程。否则,服务器可能已经停止。
您应该能够确定PID(并将其存储在文件中),如下所示:
nohup server &
print $! >> my_server.pid
答案 1 :(得分:12)
如果创建了nohup.out文件,则可以在bash中运行:
# lsof nohup.out
它将返回创建/正在运行文件的pid
最好的问候!答案 2 :(得分:2)
在ps
命令的帮助下,没有明确的方法来捕获确切的过程,但您可以使用以下内容:
ps -a | grep "server"
您将获得名为“server”
的所有进程列表或者,您也可以使用任何其他关键字来输出ps输出。
答案 3 :(得分:1)
在centos中启动服务器的最佳方法是使用service命令。
所以
service httpd start
您可能希望将程序编写为守护程序
守护程序(或服务)是一个旨在运行的后台进程 自主地,很少或没有用户干预。 Apache网站 服务器http守护进程(httpd)就是守护进程的一个这样的例子。它等待 在后台监听特定端口,并提供页面或 根据请求的类型处理脚本。
请参阅http://www.netzmafia.de/skripten/unix/linux-daemon-howto.html