2 wanjiupeng wanjiupeng 于 2014.12.04 15:32 提问

bat脚本问题,重复循环判断一个文件是否存在,直至该文件存在

大致说个流程,点击bat,判断文件存在,在的话就把它删了,不在的话就一直判断,直到存在,也就是说,当程序执行后,发现没有这个文件,程序还在循环的跑,当在新建finish.fl文件的时候,程序发现有这个文件,把它删了,这时候程序才结束了

不知道这样的bat脚本能不能够实现,可以的话麻烦贴出代码,非常感谢

5个回答

caozhy
caozhy   Ds   Rxr 2014.12.04 17:13
已采纳

echo off
if exist d:\finish.fl del d:\finish.fl
loopstart:
if exist d:\finish.fl goto exit
goto loopstart
exit:

wanjiupeng
wanjiupeng 回复caozhy: 用户自己新建或者拷贝,这个只是一个标识文件,也就是有这个文件才进行接下来的操作
接近 3 年之前 回复
caozhy
caozhy 回复wanjiupeng: 谁新建的finish.fl?之前第二次给的脚本怎么不行?
接近 3 年之前 回复
wanjiupeng
wanjiupeng 我已经将问题重新编辑了一遍,麻烦您再看下,最终效果是要实现:没有finish.fl->点击bat->新建finish.fl->finish.fl被删除(非手动删除)->结束
接近 3 年之前 回复
caozhy
caozhy   Ds   Rxr 2014.12.04 15:40

echo off
loopstart:
if exist d:\finish.fl goto exit
goto loopstart
exit:

wanjiupeng
wanjiupeng 可能是我表述的不够清楚吧,判断文件存在,在的话就把它删了,不在的话就一直判断,知道存在,也就是说,当程序执行后,发现没有这个文件,程序还在循环的跑,当在新建finish.fl文件的时候,程序发现有这个文件,把它删了,这时候程序才结束了,不知道大神能不能重新给个,麻烦了
接近 3 年之前 回复
wanjiupeng
wanjiupeng 大神你好,问题应该是解决了一般,如果该文件不存在程序也会退出
接近 3 年之前 回复
xuzuning
xuzuning   Ds   Rxr 2014.12.04 15:58

:loop
@IF NOT EXIST D:\finish.fl goto loop

xuzuning
xuzuning 回复wanjiupeng: @echo off :loop IF NOT EXIST D:\finish.fl goto loop del D:\finish.fl @echo 已删除
接近 3 年之前 回复
wanjiupeng
wanjiupeng 可能是我表述的不够清楚吧,判断文件存在,在的话就把它删了,不在的话就一直判断,知道存在,也就是说,当程序执行后,发现没有这个文件,程序还在循环的跑,当在新建finish.fl文件的时候,程序发现有这个文件,把它删了,这时候程序才结束了,不知道大神能不能重新给个,麻烦了
接近 3 年之前 回复
caozhy
caozhy   Ds   Rxr 2014.12.04 16:17

echo off
loopstart:
if exist d:\finish.fl goto exit
goto loopstart
exit:
del d:\finish.fl

wanjiupeng
wanjiupeng 这样的话好像我点击执行这个bat文件不管有没有跳出循环都会结束程序,如果没有该文件那对接下来的文件存在情况没有起到监视的作用,不知道能不能再次请教,能否加下我QQ273532795,或者我加你也行
接近 3 年之前 回复
xuzuning
xuzuning   Ds   Rxr 2014.12.04 16:25
@echo off
:loop
IF NOT EXIST D:\finish.fl goto loop
del D:\finish.fl
@echo 已删除

Csdn user default icon
上传中...
上传图片
插入图片