Java JPS commands under Linux are parsed in detail


To display information about a process in Linux environment, you may always use PS commands, such as the following commands to display Java processes executed by the current system:

ps -ef | grep java

For Java processes, JDK1.5 later provides a small tool to view all current java process pids.


JAVA_HOME/bin/under the directory


JPS (Java Virtual Machine Process Status Tool) is a command provided by JDK 1.5 to display the PID of all current Java processes. It is simple and practical. It is very suitable for simple inspection of current Java processes on linux/unix platform.


Execute JPS – help first to see how this command is used

# jps -help
usage: jps [-help]
    jps [-q] [-mlvV] [<hostid>]

  <hostid>:   <hostname>[:<port>]

Specific [options] option resolution:

– q: Output only VM identifiers, excluding classname, jar name, arguments in main method;
– m: Output main method parameters;
– l: Output complete package name, apply main class name, complete path name of jar;
– v: output JVM parameters;
– V: The output is passed to the JVM parameters through the flag file (. hotspotrc file or – XX: Flags = specified file);


JPS command:

[[email protected] app]# jps
16464 jar
2300 jar

jps -q:

[[email protected] app]# jps -q

jps -m

[[email protected] app]# jps -m
16464 jar
2300 jar

jps -l

[[email protected] app]# jps -l
16464 test-1.0.0-SNAPSHOT.jar

Of course, you can also combine parameters, such as

jps -ml

Special instructions

JPS only finds the Java processes of the current user, not all processes in the current system.

Thank you for reading. I hope to help you. Thank you for your support.