我是一名菜鸟,最近刚刚开始学习批处理,在论坛中下了一套"MS-DOS6_2批处理文件高级指南"教程,其中有关于下面一段代码的描述(原文):
if not exist io_text.bat dir >io_text.bat
此命令很直观,你可能会认为如果io_text.bat文件不存在,那么该批处理文件就会创建它.并将当前目录的文件清单赋给它,否则就什么也不做,遗憾的是,MS-DOS实际上并不如此运行. 当if命令中说明的命令用了至一文件的重定向时,MS-DOS就首先打开该文件以准备后面的输出. 接着MS-DOS进行if命令测试--在此例中是测试io_text.bat文件是否存在.由于ms-dos刚刚创建了此文件,所以它确确实实存在,这样if not exist 命令始终会失败,于是该命令执行后io_text.bat文件存在但内容为空
[ Last edited by trickster on 2006-12-27 at 11:56 AM ]作者: rochan 时间: 2006-12-28 04:04 不是吧.我在我机子上 运行了一下这个命令...很正常啊..
存在则 不做任何动作..不存在 则生成..文件内容 是 dir命令 所回显的内容...