taskkill 杀批处理进程

bat start 启动一个子线程,如图,
当前bat怎么把ext.bat给结束点,而自己保持继续运行
taskkill /f /FI "IMAGENAME eq cmd.exe" 会把自己也结束掉,

taskkill /f /FI "IMAGENAME eq cmd.exe - ext.bat"
信息: 没有运行的带有指定标准的任务。

第1个回答  2012-11-17
我喜欢来简单的,因为,本来就是为了方便。
@echo off
title sy
taskkill /f /im cmd.exe /fi "windowtitle eq sy" >nul
这个程序会把除了自身以外的所有bat程序关闭。当然咯,这里我给它的名字是sy,你可以改成。
总之,把这句话,加到你程序最后面就ok啦!本回答被网友采纳
第2个回答  2012-11-16
直接用pid删除,我试了下可行。

经验说明,子进程cmd的pid会大于父进程cmd的pid,所以你可以加上 pid gt 200?

200?当然是不确定的,所以你得查看,tasklist |findstr cmd 对于你的情况,第一个就是父进程cmd的pid,若果是交互模式,你自己查看了再删。如果你要自动处理,可以用 for 解析获取出第二行的pid,就是子进程ext.bat的pid

亲测通过

@echo off&&setlocal enabledelayedexpansion
set /a n=1
for /f "tokens=2" %%i in ('tasklist^|findstr cmd') do (
if !n!==2 taskkill /pid %%i
set /a n+=1
)
pause
第3个回答  2012-11-17
根据标题栏信息删除

taskkill /f /FI "windowstitle eq c:\windows\system32\cmd.exe - ext.bat"

最好简化一下,start 的时候设置一下标题栏,或者在ext.bat 里用title命令设置标题栏。

start "ext" ext.bat
taskkill /f /FI "windowstitle eq ext"本回答被提问者采纳
第4个回答  2012-11-18
让ext.bat goto :eof

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网