获取java进程的名称而不是pid?

时间:2010-11-11 06:59:30

标签: java

在JDK 1.5及更高版本中找到的

jps.exe可以监视所有Java进程,但有没有办法检测指定命令行并终止正确的pid?

如果用户有JRE,是否有类似的代码允许我们轻松终止任何进程?

希望将主题保留在我正在使用的Windows上。

2 个答案:

答案 0 :(得分:1)

jps命令支持许多修改命令输出的选项。这些选项将来可能会更改或删除。

-q禁止输出类名,JAR文件名和传递给main方法的参数,只生成本地VM标识符列表。

-m输出传递给main方法的参数。嵌入式JVM的输出可能为null。

-l输出应用程序主类的完整包名或应用程序的JAR文件的完整路径名。

-v输出传递给JVM的参数。

-V通过flags文件(.hotspotrc文件或-XX:Flags =参数指定的文件)输出传递给JVM的参数。

jps的输出传递给grepsedawkperl或甚至另一个Java程序,以进一步匹配,解析和操作。在Windows上,获取这些实用程序的最简单方法是通过Cygwin。

以下是一些Microsoft可下载的命令行实用程序,可用于在Windows上处理进程:

答案 1 :(得分:0)

如果用户没有 jps ,您可以使用 ps ps 的命令行选项因平台而异,请参阅系统上的 man ps 。我使用 ps -C java -o pid,time,cmd 列出CentOS系统上的java进程。然后 kill 终止。