找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 15516|回复: 3

请教“批处理教程(建议耐心看完,必有收获)”中的不明处

[复制链接]
发表于 2008-5-4 10:35:30 | 显示全部楼层 |阅读模式
教程中的例2
例二、再给出一个已经过时的例子(a.bat):
{
@echo off
if exist C:\Progra~1\Tencent\AD\*.gif del C:\Progra~1\Tencent\AD\*.gif
a.bat
为什么说这是个过时的例子呢?很简单,因为现在已经几乎没有人用带广告的QQ了(KAO,我的QQ还显示好友三围呢!!),所以它几乎用不上了。但曾经它的作用是不可小窥的:删除QQ的广告,让对话框干干净净。这里用的地址是QQ的默认安装地址,默认批处理文件名为a.bat,你当然可以根据情况自行修改。在这个脚本中使用了if命令,使得它可以达到适时判断和删除广告图片的效果,你只需要不关闭命令执行后的DOS窗口,不按CTRL+C强行终止命令,它就一直监视是否有广告图片(QQ也再不断查看自己的广告是否被删除)。当然这个脚本占用你一点点内存,呵呵。
}


此例中说不关闭命令执行后的DOS窗口,不按CTRL+C强行终止命令,它就一直监视是否有广告图片(QQ也再不断查看自己的广告是否被删除)。我用的时候怎么只有第一次有效,以后再建立新的文件怎么不自动删除?



在一个就是if语句中有一个例子是说
masm %1.asm
if exist %1.obj link %1.obj
else pause & edit %1.asm
也就是if和else搭配使用
我自己编写了一个批处理怎么说else不是外部命令呢,如下
@echo off
if exist  c:\a.txt del c:\a.txt
else md c:\a
echo.&pause
 楼主| 发表于 2008-5-4 10:54:17 | 显示全部楼层
自己先回复个if语句的吧,把批处理命令改了一下,如下,即成功了
@echo off
if exist e:\a.txt (del e:\a.txt) else md e:\a
echo.&pause
其中else只能与if放入同一行,而且if条件成立的语句必须用()引起来
以上仅是本人实验得出的结果,如果不正确之处请予指正,谢谢
发表于 2008-5-4 10:58:10 | 显示全部楼层
第一个问题,语句不全,应该要加上循环语句才不会退出,不过那样的话会很占系统资源,不实用。
第二个问题, else 不能在一行的开头使用。
应该是 
if exist  c:\a.txt (del c:\a.txt) else md c:\a
或者
if exist  c:\a.txt (
  del c:\a.txt
) else md c:\a
 楼主| 发表于 2008-5-4 11:47:43 | 显示全部楼层

回复 3楼 的帖子

谢谢巡逻员,看来那个教程只是起讲解作用,还有很多语法问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 05:11 , Processed in 0.017047 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表