2

Я видел, что можно использовать wmic чтобы найти id процесса, ищущего command line которая использовалась для его запуска.

Но у меня есть 2 проблемы.

  • Мне нужно использовать это в пакетном файле, поэтому я не могу прочитать вывод wmic и вызвать taskkill, я должен использовать какой-то grep
  • Я не мог найти, как искать частичное совпадение. Я предпочитаю искать кусок командной строки.

То, что я мог найти, это пример:

wmic process where "CommandLine=start.bat", pid

Но то, что я хотел бы сделать, больше похоже на:

wmic process where "CommandLine like %start.bat%", pid | taskkill 

Это то, что я имею в виду под командной строкой:"cmd.exe" /c C:\Mysql\start.bat "

Есть ли способ убить процесс, ищущий командную строку, которая его запустила?

1 ответ1

5

Как использовать wmic для уничтожения поиска экземпляра cmd.exe по его командной строке?

Кажется, что вы можете сделать это изначально из пакета Windows с приведенным ниже форматом. Просто подключите имя вашего пакетного файла (это строка, найденная с помощью опции WMIC COMMANDLINE ) в части %start.bat% как я это сделал ниже - я использовал start.bat в моем примере ниже, как вы использовали в своем примере.

Пример обработки файла с помощью WMIC KILL

WMIC PROCESS WHERE "COMMANDLINE LIKE '%start.bat%'" CALL TERMINATE

Дополнительное Чтение и Ресурс URL: http://www.dedoimedo.com/computers/windows-wmic.html

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .