jps 命令用于在 Linux 终端中列出当前正在运行的 Java 进程的进程 ID(PID)

912 阅读2分钟

首先使用命令来查询当前的 java 进程情况

ps -aux | grep java

如我这里的 找到很多已经不使用的 java 进程,却依然还是占用着内存,内存没释放

image.png

然后找到不使用的 jar 进程 pid 直接kill ,如我这里的

 kill 4905

ps 命令在 Linux 中用于查看当前正在运行的进程的信息,包括进程 ID(PID)、进程名称、使用的 CPU 和内存等等。默认情况下, ps 命令会列出与当前终端相关的进程。

以下是一些您可以在 CentOS 7 中使用的常见 ps 命令选项:

  • ps -ef :列出所有进程的详细信息。
  • ps aux :列出详细的进程信息,包括 CPU 和内存使用率等。
  • ps -ejH :以树状结构列出所有进程,其中包括它们的父进程和子进程。
  • ps -eLf :列出所有进程和它们的线程。
  • ps -e --sort=-%cpu | head :列出 CPU 使用率最高的 10 个进程。
  • ps -e --sort=-%mem | head :列出内存使用率最高的 10 个进程。

在 CentOS 7 中使用 grep 命令可以进一步筛选 ps 命令输出的结果。例如,可以使用以下命令查找名称中包含关键字的进程:

ps -ef | grep <名称>

其中 <名称> 是您要查找的进程名称或关键字。例如,如果您要查找名称中包含 httpd 的进程,可以使用以下命令:

ps -ef | grep httpd

该命令将输出所有名称中包含 httpd 的进程,类似于以下内容:

apache    2056  1859  0 07:02 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache    2057  1859  0 07:02 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
root      1859     1  0 06:08 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND

还可以使用其他选项,例如 -i 选项来忽略大小写,或 -v 选项来反转匹配结果。


也可以使用 jps 命令来查看:

 jps

使用 jps 命令来查看在您的系统上正在运行的 Java 进程的 PID。该命令会列出正在运行的 Java 进程的 PID、名称以及其他相关信息。以下是一个示例命令:

image.png

在上面的输出中,PID 分别为 1268、12662 、 2679、17103,其中 Jps 是 Java 进程管理工具的名称,Application 和 jar 还有 dts ... 是正在运行的 Java 应用程序的名称。

在这个例子中,可以使用 PID 1268 和 12662 来监测 Application 和 jar 进程的使用情况,检查 Java 进程的内存使用、堆大小等信息。


也可以使用 top 命令来查看:

 top

image.png