我试图在一个控制台窗口中运行taskkill,在它的标题中有空格。 我怎样才能通过这个窗口标题任务技能。 我已经尝试了以下内容:
taskkill /fi "WINDOWTITLE eq Administrator: My Window Title"
我有类似的问题,但发现更多一点。
我一直试图关闭一个CMD窗口(以管理员身份运行),它已经设置了自己的窗口标题。 所以,以管理员身份运行CMD并输入:
title CMD with custom title
经过太多的折腾后,下面的命令告诉我,设置窗口标题在标题前放置了一个前导空间! (不知道为什么。)
c:\>tasklist /V /FI "WindowTitle eq Administrator*" Image Name PID Session Name Session# Mem Usage Status User Name CPU Time Window Title ========== ==== ============ ======== ========= ======= =============== ======== ===================================== cmd.exe 4304 Console 1 2,492 K Running MACHINE\My Name 0:00:00 Administrator: CMD with custom title 🡹 (scroll 🡺) extra space
所以要杀死这个过程:
taskkill /F /FI "WindowTitle eq Administrator: CMD with custom title" /T 🡹 bingo
/F
– 使用力量。 /T
– 杀死子进程。 如果你以类似的方式抨击你的头脑,我建议使用tasklist
在流程属性中tasklist
,以确保你的过滤器正确。 这个ballache由Windows 8带给你。
注意:如果标题包含引号,则只能转义嵌套的引号:
title "CMD with custom title" taskkill /F /FI "WindowTitle eq Administrator: \"CMD with custom title\"" /T
我想这个任务运行在你的Windows服务器上。 如果标题中包含“Administrator:”,则不能通过WindowTitle等待任务。
你应该使用这个:这是我的killer.bat。 SEARCH_PARAMETER =你杀死什么
@echo off for /f "tokens=2 delims=," %%a in (' tasklist /fi "imagename eq cmd.exe" /v /fo:csv /nh ^| findstr /r /c:".*SEARCH_PARAMETER[^,]*$" ') do taskkill /pid %%a
taskkill / F / FI“WindowTitle eq Apache 8184”
我正在使用AutoIt启动cmd shell窗口,关于使用tasklist的提示确实有帮助。 我已经尝试了双空格,但是AutoIt的Run()命令创建了cmd.exe shell,使tasklist / taskkill无法看到窗口标题。
如果我用循环或AutoIt的WinKill()/ WinClose()与cmd提示符的窗口标题,然后AutoIt本身可以关闭窗口,但我的cmd提示bat文件只看到c:\ windows \ system32 \ cmd作为窗口标题。
在这种情况下,我能够使用AutoIt来杀死窗口而不是批处理脚本。