位置
JAVA_HOME/bin目录包含所有java命令,jps也不例外
功能
jps(java virtual Machine Process status Tool)是JDK1.5提供的一个功能,用于查看当前所有的java进程pid的命令,非常适合在linux/unix平台下使用
使用
学习一个命令之前,先用-help查看一下
jps -help
usage: jps [-help]
jps [-q] [-mlvV] [<hostid>]
Definitions:
<hostid>: <hostname>[:<port>]
然后我们输入jps,不带任何参数
jps
389
1560 Bootstrap
1563 Jps
会看到有三个进程,第一个是eclipse的进程,第二个是我启动了一个tomcat的进程,第三个是Jps自己本身的进程
我们再输入jps -p试试,只显示进程号
jps -q
1568
389
1560
我们看到,只有进程号了,其他都没有
我们再输入jps -m试试,会显示传给进程的参数
jps -m
1573 Jps -m
389
1560 Bootstrap start
现在我们看到,我们这个进程获得了什么参数了
jps -l会显示完整的package名字,如下
jps -l
389
1575 sun.tools.jps.Jps
1560 org.apache.catalina.startup.Bootstrap
jps -v会显示传递给jvm的参数
jps -v
389 -Dosgi.requiredJavaVersion=1.7 -XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts -XX:MaxPermSize=256m -Xms256m -Xmx1024m -Xdock:icon=../Resources/Eclipse.icns -XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
1560 Bootstrap -agentlib:jdwp=transport=dt_socket,suspend=y,address=localhost:62740 -Dcatalina.base=/usr/local/apache-tomcat-7.0.67 -Dcatalina.home=/usr/local/apache-tomcat-7.0.67 -Dwtp.deploy=/usr/local/apache-tomcat-7.0.67/webapps -Djava.endorsed.dirs=/usr/local/apache-tomcat-7.0.67/endorsed -Dfile.encoding=UTF-8
1577 Jps -Denv.class.path=.:/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/lib/dt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home/lib/tools.jar -Dapplication.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home -Xms8m
注意,jps进程只会显示当前用户的java进程