检查正在运行的进程 - java

时间:2013-09-05 15:08:37

标签: java unix

我想编写一个部署在unix框中的java应用程序。我需要检查正在运行的进程 - 在盒子上运行。有人能告诉我一个例子/指出我正确的方向吗?

2 个答案:

答案 0 :(得分:15)

如果要查找正在运行的java进程,可以使用

ps -ef | grep java

如果您需要检查正在使用的端口,

netstat -tupln

答案 1 :(得分:2)

我遇到了Java提供的ps aux | grep java的一些替代方案,需要更少的输入:

jcmd

jps -v

选项-v将显示传递给JVM的参数。

如果流程信息不可用,这可能是因为该流程正在使用OpenJDK运行。 如果您是root用户并且该进程是以非root用户身份启动的,则可以使用以下内容查看详细信息(将<user>替换为用户名):

sudo -u <user> jps -v

jcmd的另一个不错的功能是,您可以显示特定进程使用的Java版本(如果ps aux | grep java未显示它),那是我如何遇到这两个版本的(将<pid>替换为进程ID):

jcmd <pid> VM.version