[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] [已解决]bat如何检测上一目录的文件是否存在?

本帖最后由 yhuk 于 2023-2-7 22:03 编辑

如图

在global_variable目录下read_in_set.bat脚本去检测上一目录initial.set1.bat文件是否存在。如果不存在则从global_variable目录下复制到上一目录。本意是想能够分享给同事用。但从百度上没找到好的例程。跪求大佬指点。
  1. @REM 打开网络适配器,根据实际需求方便快速设置IP
  2. start ncpa.cpl
  3. @REM 进行上一目录下set.bat文件判定。不存在文件则自动创建。并使用该文件进行全局变量初始化。
  4. set file=../initial.set1.bat
  5. if exist %file% (
  6.     echo 全局变量参数文件存在!
  7. ) else (
  8.     echo 全局变量参数文件不存在!开始创建!
  9.     copy global_variable\initial.set.bat initial.set.bat
  10. )
  11. pause
复制代码
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

艹。用cd和dir命令打断了一下程序的执行,然后发现由index.bat调用的read_in_set.bat对于目录的判定是根据index.bat的位置来的。学艺不精闹笑话了。
  1. @REM 打开网络适配器,根据实际需求方便快速设置IP
  2. start ncpa.cpl
  3. @REM 进行上一目录下set.bat文件判定。不存在文件则自动创建。并使用该文件进行全局变量初始化。
  4. set file=initial.set.bat
  5. if exist %file% (
  6.     echo 全局变量参数文件存在!
  7. ) else (
  8.     echo 全局变量参数文件不存在!开始创建!
  9.     copy global_variable\initial.set.bat initial.set.bat
  10. )
  11. pause
复制代码
然后发现自己是在对file定义的时候多加了一个1。笑死。

TOP

本帖最后由 986981535 于 2023-2-7 10:50 编辑
  1. echo off
  2. cd..
  3. set file=initial.set.bat
  4. if exist %file% (
  5.     echo 全局变量参数文件存在!
  6. ) else (
  7.     echo 全局变量参数文件不存在!开始创建!
  8.     copy %cd%\global_variable\initial.set.bat initial.set.bat
  9. )
  10. pause
复制代码
回复 2# yhuk 差不多
1

评分人数

TOP

返回列表