Board logo

标题: [文件操作] [已解决]求助各位帮忙解决文件操作类批处理代码问题,谢谢了。 [打印本页]

作者: ccns    时间: 2014-12-29 12:57     标题: [已解决]求助各位帮忙解决文件操作类批处理代码问题,谢谢了。

如何用批处理脚本读取配置文件,并逐个判断配置文件中指向的文件是否存在。

目录A下有下列文件:1.txt、2.txt、3.txt、配置.ini
配置.ini文件里的内容为:
目录A\1.txt
目录A\2.txt
目录A\3.txt

实现功能:

运行“脚本.bat”,“脚本.bat”读取“目录A\配置.ini”的内容,“脚本.bat”根据“目录A\配置.ini”里的内容逐个判断内容中指向的文件是否存在,
如果存在继续判断下一个文件,如果不存在,则提示“文件不存在”。


谢谢各位了。
作者: DAIC    时间: 2014-12-29 13:29

  1. @echo off
  2. for /f "usebackq delims=" %%i in ("目录A\配置.ini") do (
  3.     if not exist "%%i" (
  4.         echo %%i 文件不存在
  5.     )
  6. )
  7. pause
复制代码
执行脚本之前:
用记事本打开 配置.ini
文件
另存为
选择ANSI编码
保存
作者: linuxlang    时间: 2014-12-29 15:20

  1. @echo off
  2. setlocal ENABLEDELAYEDEXPANSION
  3. for /f %%i in (配置.ini) do (if not exist %%i echo,%%i文件不存在
  4. if exist %%i del %%i
  5. )
复制代码

作者: ccns    时间: 2014-12-29 15:46

本帖最后由 ccns 于 2014-12-29 15:53 编辑

回复 2# DAIC


    谢谢你了,很感谢各位,但是分只能给其中一个人,3楼的代码更符合了我的用意。
作者: DAIC    时间: 2014-12-30 10:44

回复 4# ccns
  1. @echo off
  2. for /f %%i in (配置.ini) do (
  3.     if not exist %%i (
  4.         echo %%i文件不存在
  5.     ) else (
  6.         del %%i
  7.     )
  8. )
复制代码
把两个 if 改成 if else 可以提高效率




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2