PowerShell 终止其命令行检测到的 java 进程
PowerShell terminate java process detected by its commandline
我正在启动一个 java 进程:
$global:TS = Start-Process -FilePath "$pathTS\jdk\bin\java.exe" -ArgumentList "-jar","`"$pathTS\TestServer.jar`"" -WorkingDirectory ` "$pathTS" ` -PassThru -WindowStyle Hidden
到目前为止工作正常。
现在我正在尝试终止该进程:
Invoke-CimMethod -Query 'select * from Win32_Process where CommandLine like "Test-Server"' -MethodName "Terminate"
顺便说一句:我无法使用进程的 ID 来终止它,因为它正在发生某种变化。
我是 PS 的新手,现在卡住了。
也许有人有想法。
谢谢!
亚历克斯
尝试将通配符 %
添加到 WHERE 子句中,以查找在命令行中任何位置找到“Test-Server”的所有实例:
... WHERE CommandLine like "%Test-Server%"...
参考:https://docs.microsoft.com/en-us/windows/win32/wmisdk/like-operator
我正在启动一个 java 进程:
$global:TS = Start-Process -FilePath "$pathTS\jdk\bin\java.exe" -ArgumentList "-jar","`"$pathTS\TestServer.jar`"" -WorkingDirectory ` "$pathTS" ` -PassThru -WindowStyle Hidden
到目前为止工作正常。
现在我正在尝试终止该进程:
Invoke-CimMethod -Query 'select * from Win32_Process where CommandLine like "Test-Server"' -MethodName "Terminate"
顺便说一句:我无法使用进程的 ID 来终止它,因为它正在发生某种变化。
我是 PS 的新手,现在卡住了。 也许有人有想法。
谢谢! 亚历克斯
尝试将通配符 %
添加到 WHERE 子句中,以查找在命令行中任何位置找到“Test-Server”的所有实例:
... WHERE CommandLine like "%Test-Server%"...
参考:https://docs.microsoft.com/en-us/windows/win32/wmisdk/like-operator