中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-02 00:31
48,037 主题排行 / 350,122 发帖 / 今日 2 篇 / 48,250 会员排行
DOS批处理 & 脚本技术(批处理室) » 关于关闭特定进程的批处理脚本编写
可打印版本  1,170 / 1
第1楼 mindfree 发表于 2006-08-21 02:10
新手上路 发帖 1 积分 6
关于关闭特定进程的批处理脚本编写
@echo on

::::取得PID列表
set errorlevel=>nul
echo wscript.echo "PID ProcessName">>1.vbe
echo for each ps in getobject("winmgmts:\\.\root\cimv2:win32_process").instances_ >>1.vbe
echo wscript.echo ps.handle^&vbtab^&ps.name>>1.vbe
echo next>>1.vbe
cscript 1.vbe >D:\英雄宽频影片自动更新\list.txt

::::找到指定程序
if exist D:\英雄宽频影片自动更新\1.vbe del D:\英雄宽频影片自动更新\1.vbe
findstr /c:"taskmgr.exe" D:\英雄宽频影片自动更新\list.txt > D:\英雄宽频影片自动更新\right.txt

::::找到指定PID值
for /f %%m in (D:\英雄宽频影片自动更新\right.txt) do set pid=%%m

::::关闭指定PID进程
ntsd -c q -p %pid%


写是写出来了。但是我还想要一个开关。。
就如在进程里如果没有taskmgr.exe的话,我就想让程序跳出,如果有就结束。。

望各位指点一二,谢谢。
第2楼 namejm 发表于 2006-08-22 23:56
荣誉版主 发帖 1,737 积分 5,226 来自 成都
  把tasklist|find "taskmgr.exe" && taskkill /f /im taskmgr.exe|| exit这句放到合适位置就可以了。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023