Существует ли утилита командной строки, которая уничтожает все процессы с определенной командной строкой?
Например, уничтожьте все процессы под названием "java.exe" с командной строкой, которая содержит "-селен-server.jar банки". Это возможно через проводник процесса.
В Windows XP можно сделать это легко uing WMIC, Консоль WMI. От команды propt, введите следующее:
wmic Path win32_process Where "CommandLine Like '%-jar selenium-server.jar%'" Call Terminate
Править:
Я заменил псевдоним 'процесс' им полный путь ('соединяют win32_process' каналом), как порт Летчика. Этот псевдоним не может быть объявлен на каждой ОС.
Я полагаю, что Вы могли сделать это с Получать-процессом использования PowerShell и StartInfo. Аргументы на процессе Вы хотите.
$procs = Get-Process java
foreach($proc in $procs)
{
if($proc.StartInfo.Arguments -contains "-jar selenium-server.jar")
{
kill $proc
}
}
(Я не протестировал это полностью, но необходимо смочь настроить его, чтобы заставить его работать),
Если Вы используете версию Windows, которая имеет команду WMIC в нем. Можно попробовать это
wmic path win32_process Where "Caption Like '%java.exe%' AND CommandLine Like '%selenium.jar%'" get ProcessId|more +1
more +1
удаляет первую строку, содержащую заголовок, и печатает один только PID. Если будет больше чем один процесс Java, содержащий selenium.jar затем, то это возвратит один PID на строку.