java在Linux中不使用sudo查找进程名
以下是我熟悉的命令,它们可以执行您可能认为我需要的操作:
为了这个问题"pn" = "process name"
pgrep pn
sudo /sbin/service pn status
ps -fC pn
我遇到的问题是Javapgrep Java
将给出所有java进程的PID。但是,如果我知道java应用程序的确切名称,让我们称之为coffee,pgrep Coffee
什么都没有给我。然而,sudo /sbin/service Coffee status
会给我咖啡的确切PID。问题是我不想也不能在我写的脚本中使用sudo。那么,即使咖啡是Java应用程序,我如何找到它的PID呢
# 1 楼答案
您可能想看看JPS(Java进程状态)工具。我不记得它是否与运行时环境一起提供。它列出了当前运行的所有java进程、它们的PID以及java应用程序的名称。您可能可以解析输出以获得所需的值
http://docs.oracle.com/javase/7/docs/technotes/tools/share/jps.html
样本输出: