![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-09-15 13:20 |
共 47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,268 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 求一即时删除文件的批处理程序!!! |
| 可打印版本 13,763 / 36 |
| 第16楼 NaturalJ0 | 发表于 2006-10-25 20:27 |
| 银牌会员 发帖 533 积分 1,181 | |
|
从楼主这儿了解到个新命令,谢谢,又学到新东西了。
PS:楼主的方法是搜硬盘,我觉得效率可能不是很高,如果换成直接用 taskkill 结束 qqgame 的进程,会不会对机子的负担稍低些呢?而且为了对机子负担小些,可以设的时间稍长些。你同学玩QQ游戏时才玩个几分钟突然就莫名的退出了,几次后不明原因也就不想玩了。用 DEL 删除有很小的可能性会碰到“另一个程序正在使用此文件,进程无法访问。” |
|
| 第17楼 zrz000 | 发表于 2006-10-25 21:07 |
| 初级用户 发帖 16 积分 44 | |
|
学习了.真不错.
|
|
| 第18楼 tianzizhi | 发表于 2006-10-25 21:34 |
| 高级用户 发帖 214 积分 623 | |
|
我的贴又上来了,很开心,又能让大家学到更多的知识了.
谢谢naturaljo的指教,我这些时间已把这个批处理修改的比较人性化了,你说的那个taskkill我已加过了,现在已实现的批处理思想是,开机后运行一计划,隔三分钟检查一下硬盘里有没有qqgame.exe这个程序,没有的话就退出,有的话创建一计划,在一小时后自己执行一结束和删除与qqgame.exe有关的程序,这个结束和删除的批处理驻留的内存中,我想让他们只玩一小时就行了,也不能一会不让玩呀,毕竟是朋友么,我主要是想用这种思维来学习一下在应用中学习批处理. [ Last edited by tianzizhi on 2006-10-25 at 09:57 PM ] |
|
| 第19楼 tianzizhi | 发表于 2006-10-25 21:52 |
| 高级用户 发帖 214 积分 623 | |
|
我把我已应用的批处理拿上来让大家看看,高手们也指教一下,新手们学习一下,谢谢,
这个批处理分三部分: 第一部分,是开机运行一计划的部分: 首在机子创建一任务:schtasks /create /ru system /sc 3 /mo minute /tn zhang /tr d:\常用\g.vbs 创建好后这个以后就不用管了,它以后会一直在机子里的. g.vbs连接的批处理内容为: @echo off schtasks /change /tn zhang /ru system /enable schtasks /run /tn zhang 这是第一部分运行计划部分,下面是第二部分,执行检查的部分: 下面的执行部分两种写法 一: @echo off for %%1 in (c: d:) do @%%1 & dir QQGame.exe /s /a /b>>c:\windows\dir.txt type c:\windows\dir.txt | find "QQGame.exe" /i if errorlevel 1 goto end if errorlevel 0 goto zhang :end exit :zhang @echo off setlocal ENABLEDELAYEDEXPANSION set /a next_hour=0 set /a next_minute=0 for /F "tokens=1,2 delims=:" %%i in ('TIME /t') do ( rem 这里1是间隔时间,可以根据需要自己调节 set /a next_minute=1%%j-100 set /a next_hour=1%%i-100+1 if !next_minute! GEQ 60 ( set /a next_minute=!next_minute!-60 set /a next_hour=!next_hour!+1 if !next_hour! GEQ 24 set /a next_hour=!next_hour!-24 ) ) schtasks /change /tn zhang /ru system /disable copy d:\常用\dir.txt c:\windows\ /y at !next_hour!:!next_minute! d:\常用\d.vbs endlocal 二:@echo off for %%1 in (c: d:) do @%%1 & dir QQGame.exe /s /a /b>>c:\windows\dir.txt type c:\windows\dir.txt | find "QQGame.exe" /i if errorlevel 1 goto end if errorlevel 0 goto zhang :end exit :zhang @echo off @echo off setlocal ENABLEDELAYEDEXPANSION rem 这里1是间隔时间,可以根据需要自己调节 set a=%time:~0,2% echo %a% set /a next_hour=a+1 set a=%time:~3,2% if %a:~0,1%==0 (set /a next_minute=%a:~1%+1) else set /a next_minute=a+1 if %next_minute% GEQ 60 (set /a next_minute=!next_minute!-60 set /a next_hour=!next_hour!+1 if !next_hour! GEQ 24 set /a next_hour=!next_hour!-24 ) schtasks /change /tn zhang /ru system /disable copy d:\常用\dir.txt c:\windows\ /y at !next_hour!:!next_minute! d:\常用\d.vbs endlocal 上面是第二部分检查的部分,下面是第三部分,到时间执行结束任务和删除程序的部分: @echo off :zhang for %%1 in (c: d:) do @taskkill /f /t /im qqgame.exe & del %%1\qqgame*.* /s /a choice /t 120 /d y goto zhang 好了,一共就这么多了,请大家看看吧,也请高手们提出更好的建议,把它更完善一下,谢谢!!! |
|
| 第20楼 kingchain | 发表于 2006-10-25 22:34 |
| 初级用户 发帖 57 积分 133 | |
|
搂主学习的精神值得我学下!
|
|
| 第21楼 NaturalJ0 | 发表于 2006-10-25 22:36 |
| 银牌会员 发帖 533 积分 1,181 | |
|
用这句
代替 试试?(不生成临时文件 dir.txt。) PS:你把 qqgame.exe 删了,下次再玩岂不是要重装。 |
|
| 第22楼 tianzizhi | 发表于 2006-10-26 00:52 |
| 高级用户 发帖 214 积分 623 | |
|
naturaljo上面的建议很好,简化了不少,也让我揣摩一会子,&&和||用的很好呀,对于nul空设备的用法我是不太熟悉的,你能否找些它的用法贴上好让大家看看呀,你上面的
>nul 2>nul的意思能说明白一下吗,谢谢,其实我也是菜鸟的,要多多学习呀,呵呵. (向naturaljo解释一下,我机子是不装QQ游戏的,他们玩他们下载自己装,我的机子装了影子系统,开机游戏就没了.我不玩的,只是他们一玩就没有尾了,所有才想这用这个逗逗他们的,我现在在学批处理的,所以有了这个想法,用批处理实现,许多网友说用禁止,我也知道,这样的话我学习批处理还有什么用呢,学习它就要用它的对吧,其实我的最大目的不用禁止玩游戏,而是学习用批处理实现我的想法,学以致用.最后还要谢谢naturaljo的关心!!!!) |
|
| 第23楼 NaturalJ0 | 发表于 2006-10-26 01:44 |
| 银牌会员 发帖 533 积分 1,181 | |
|
贴段实例:
>nul 表示屏蔽标准输出 2>nul 表示屏蔽错误输出 结合上面的实例应该能看明白。 |
|
| 第24楼 tianzizhi | 发表于 2006-10-26 04:03 |
| 高级用户 发帖 214 积分 623 | |
|
明白了,谢谢!!
|
|
| 第25楼 bg888 | 发表于 2006-10-31 11:06 |
| 社区乞丐 发帖 2 积分 -128 | |
|
伟大领袖毛主席说:没有解决不了问题 tianzihi的文章太好了。俺在这里找了好久都没有找到圆满在批处理中定时执行的问题,只好用VBS调用BAT,是你提到CHOICE /T,用此命令在BAT中定时是再好不过了!谢谢!
|
|
| 第26楼 freeskych | 发表于 2006-11-08 12:03 |
| 初级用户 发帖 9 积分 22 | |
|
组策略设置,禁止运行相应程序
|
|
| 第27楼 jasonwang | 发表于 2006-11-09 06:30 |
| 初级用户 发帖 54 积分 122 | |
|
是基于qqgame.exe做检测吗?有目录限制没有,象我一般都是绿色版QQGAME,你这种方法不知道可行不?
|
|
| 第28楼 anqing | 发表于 2006-11-12 03:03 |
| 高级用户 发帖 413 积分 859 | |
|
运行计化任务后,在进程里,有任务的进程吗?
关于schtasks这个命令,有没有详细的中文介绍和下载? |
|
| 第29楼 jxf123521 | 发表于 2006-11-12 13:40 |
| 新手上路 发帖 3 积分 6 | |
|
感谢楼主的贴子,让我找到了学习这个的方法!
|
|
| 第30楼 htysm | 发表于 2007-01-24 06:30 |
| 高级用户 发帖 415 积分 866 | |
|
XP已经不支持choice 这个命令了。
楼主的钻研精神实在可嘉。 |
|
| 上一页 1 2 3 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |