所以我面临的问题是,在使用UAC提示获取管理员权限后,或者甚至只是让批处理文件以管理员身份运行时,以下命令在&中正常工作#39;以管理员身份运行'命令提示符,但不在批处理文件中。所述命令如下。
WMIC PROCESS WHERE name="Agent.exe" CALL Terminate
WMIC PROCESS WHERE "name like '%Battle.net%'" CALL Terminate
在命令提示符中但不在批处理文件中的这两个命令之后,我还删除了两个目录,这些目录因相关应用程序仍在运行而失败。我只是不知道为什么WMIC在具有完全相同的上下文的命令提示符中工作,而不是在批处理文件中。如果真的有必要,我可以共享整个批处理文件,但这些是唯一没有按预期工作的命令,而且我现在完全不知所措。
答案 0 :(得分:2)
%
字符充当WMIC
Like
比较器的通配符,但在Windows批处理文件中,必须将这些字符加倍:
WMIC Process Where "Name Like '%%Battle.net%%'" Call Terminate
上面写的通配符实际上是在搜索任何Process
Name
以任意数量的字符开头,后跟字符串Battle.net
然后跟随它的任意数量的字符。我会假设,尤其是因为你不需要领先的通配符的字符串主导资本。
WMIC Process Where "Name Like 'Battle.net%%'" Call Terminate