2

什么是“ sudo killall java”而不是 Eclipse 进程的好技术?

我已经尝试过grep在类路径上使用的技术,但我尝试过的一切似乎都很混乱。

4

3 回答 3

4

我建议您使用jps列出 Java 进程,然后通过管道输出grep -v以过滤掉 eclipse 进程并cut提取 pid。然后将这些作为命令行参数提供给kill.

例如:

jps | egrep -v "eclipse" | egrep -v "Jps" | cut -b1-6 | xargs -t kill

您可以使用它jps -l来更准确地识别要杀死的 java 进程。

于 2013-04-10T00:00:43.217 回答
2

你可以像这样杀死所有的java进程:

ps ax | grep "java" | cut -b1-06 | xargs -t kill

这将 grep 并剪切所有 java 进程的 PID 并杀死它们。如果你的ps ax | grep "java"回报也日食,那么做一个egrep -v "eclipse". 它将删除有 Eclipse 的行。然后把它剪掉。

ps ax | grep "java" | egrep -v "eclipse" | cut -b1-06 | xargs -t kill
于 2013-04-09T23:57:45.310 回答
-2

使用 ProcExplorer 可以看到进程树,并且可以轻松地从 powershell 获取进程创建时间:

 $a =  gwmi win32_process -computername localhost | ? { $_.name -eq "java.exe" }
 $a | % { $_.ConvertToDateTime( $_.CreationDate )}
于 2013-04-09T23:36:59.427 回答