从包含字符串的 BAT 文件中杀死特定 cmd.exe

Kill specific cmd.exe from BAT file containing string

我目前 运行 遇到一个问题,即 "cmd.exe" 进程在停止特定服务的情况下仍然处于活动状态。这反过来会导致对文件夹执行操作的自动脚本出现问题,从而阻止它 renamed/moved/etc.

由于我的自动化脚本是从 BAT 文件运行的,所以我相信我可以使用 TASKKILL 将其终止。使用 "Process Explorer",我搜索了文件夹名称,它能够找到正在使用它的 "cmd.exe"。尽管没有某种类型的 "Contains String",但我无法找到一种自动化方法。我的伪例子是...

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 个或多个字符,_ 是单个字符。否则 =, <>, <, >, <=, =>.