В настоящее время я сталкиваюсь с проблемой, когда процесс «cmd.exe» остается активным, несмотря на остановку определенной службы. Это, в свою очередь, вызывает проблемы для автоматизированного скрипта, который выполняет действия с папкой, не позволяя переименовать / переместить / etc.
Поскольку мой автоматический скрипт запускается из BAT-файла, я считаю, что могу убить его с помощью TASKKILL. Используя «Process Explorer», я искал имя папки, и она смогла найти «cmd.exe», который его использовал. У меня проблемы с поиском способа автоматизировать это, хотя без какого-либо типа «Содержит строку». Мой псевдо-пример …
taskkill /IM cmd.exe /FI "NAME contains TC38247178584278321320778"php\php.exe migration.php TC38247178584278321320778
wmic process where "commandline like '%TC38247178584278321320778%'" get name
чтобы увидеть, что следующая команда убьет
wmic process where "commandline like '%TC38247178584278321320778%'" call terminate
Увидеть wmic /?
, wmic process /?
, wmic process get /?
, wmic process call /?
, wmic process set /?
, wmic /format /?
, wmic /node /?
, etc
,
Like
является %
0 или более символов и _
это один символ Иначе =, <>, <, >, <=, =>
,
Других решений пока нет …