ps -eaf | grep java
命令不是解决进程是否是java进程的解决方案,因为执行此命令后,我的许多java进程都未在输出中列出。
答案 0 :(得分:3)
简短回答(希望有人写一篇更全面的回答):
获取流程PID
转到/proc/<pid>
从那里查找进程二进制文件
在其上运行命令file
和ldd
,看看你能从输出中找出什么(当然,查看命令的手册页)。
使用lsof
命令查看进程已打开的文件,并查看这些文件是否包含telltale库或类似文件。
答案 1 :(得分:0)
该主题解释了如何查找jvm正在运行的进程
https://superuser.com/questions/441792/how-do-i-determine-what-running-process-is-using-java
因此,您可以检查所有虚拟机并检查它们是否正在运行您正在查找的进程ID。如果没有,它必须是其他语言。
答案 2 :(得分:0)
Jab进程必须由Java可执行文件执行。因此,要查看该进程,您必须看到正在运行的命令行。 Ps -ef 要么 太平绅士 要么 HTOP
是常见的解决方案