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
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
BAT循环判断进程是否存在 bat 如果存在则继续判断 不存在则重新运行
http://zhidao.baidu.com/link?url=jAI-HU9PsYvUhm1mmKgeDlwXGK3SV9UDE7EYNR9iFuFtPYHbhgp5rqEsZtr5SmOTI8q0YzAh3k5KgSIlbzu7JdQtj5csuBS78-x5eSR_hYS @ECHO OFF TITLE BAT循环判断进程是否存在 bat 如果存在则继续判断
批处理之判断文件是否存在
@echo off rem 判断文件是否存在 if exist %1 ( echo 文件%1存在 ) else ( echo 文件%1不存在 ) pause
bat文件 判断服务是否存在的方法
转自:http://blog.sina.com.cn/s/blog_454fbf740100he1a.html @echo off REM 将引号内部分改成你要查找的服务名称 sc query |find /i "server" >nul 2>nul REM 如果服务存在,跳转至exist标签 if not errorlevel 1 (goto exist) else goto no
Shell 判断文件是否存在的方法
方法一:locate_library() { [ ! "$1*" = "`echo $1*`" ]; }用法:# Look for PAM (done weirdly due to distribution bugs (e.g. Debian) or the # crypt library. if find_func pam_start sysdeputil.o; then locate_lib
shell脚本判断文件是否存在
有一个需求是判断某一个目录下文件是否存在,如果该文件不存在,则从当前目录拷贝文件到该目录。 由于没有学习写过shell脚本,晚上下班回来搜索后写出了如下的脚本,这里shell的if语法格式与C语言大致相同,语法格式: if [ 条件 ]; then 条件成立 else 条件不成立 fi fi是结束if语句。version1.0#!/bin/sh myFile="/
bat批处理判断文件夹是否存在并创建文件夹
bat批处理判断文件夹是否存在并创建文件夹
batch文件中如何判断一个变量是否存在 (注意不是变量是否有值)
注意, batch 判断变量的是否存在不等于判断其是否有值。 不能混淆。 变量首先得存在, 即在系统中有定义, 然后确实存在后才能对其进行值得各种判断。  -如果存在但未赋值, 其初值可能为空 “”, 一般判断其是否为空的用法为:IF "%VAR%" == "" -如果不存在, 还去用此变量比较,则必然出错。 这两天在修改一个batch文件,出现了一个错误 Ba
python中判断文件是否存在的三种方式
使用os模块 OS模块中的os.path.exists()方法用于检验文件是否存在 >>> import os>>> # 判断文件是否存在 >>> result = os.path.exists('abc.txt') >>> result False >>> # 判断文件夹是否存在 >>> os.path.exists('新建文件夹') True 判断文件是否可做读写操作 使用os.access
C语言中判断文件是否存在的方法详解
本文和大家分享的主要是C语言中判断文件是否存在的相关知识,希望对大家有所帮助,一起来看看吧。   方法一:access函数判断文件夹或者文件是否存在   函数原型: int access(const char *filename, int mode);   所属头文件:io.h   filename:可以填写文件夹路径或者文件路径   mode:0 (F_OK)
cc++中判断一个文件是否存在的方法
cc++中判断一个文件是否存在的方法 cc++中判断一个文件是否存在的方法