找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 23037|回复: 3

[文件操作] 【已解决】求助一段批处理代码判断文件是否存在

[复制链接]
发表于 2015-5-5 19:48:14 | 显示全部楼层 |阅读模式
本帖最后由 chouxia 于 2015-5-24 17:44 编辑

需求:
现在有变量
wei=4
fr=4334
wei代表fr变量的位数。
此外还有按名称排列文件,0001.txt,0002.txt,0003.txt等等。
要求判断这些文件是否存在。
我的想法是:
  1. for /l %%a in (1,1,!fr!) do (
  2. if not exist c:\111\%%a.txt goto error
  3. )
  4. echo file is ok!!!
复制代码
但是我没办法给这个fr规定的数值赋予变量wei的数值代表位数。比如%%a会输出1,2,3但是不会输出0001,0002,0003。如果只是在前面加000我还有办法解决。但是0010这个数值我就不知道怎么搞了。
我想请教下,如何处理这个需求?

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

 楼主| 发表于 2015-5-5 20:38:17 | 显示全部楼层
追问,
批处理中 计算10的n次方应该怎么写代码?
发表于 2015-5-5 20:52:23 | 显示全部楼层
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set wei=4
  4. set fr=4334
  5. for /l %%a in (1,1,!fr!) do (
  6.     set name=10000000000%%a
  7.     set name=!name:~-%wei%!
  8.     if not exist "C:\111\!name!.txt" (
  9.         goto error
  10.     )
  11. )
  12. echo file is ok
  13. goto :end

  14. :error
  15. echo file is not ok
  16. goto :end

  17. :end
  18. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

发表于 2015-5-5 20:53:03 | 显示全部楼层
回复 2# chouxia


    不同的问题请单独发帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 03:59 , Processed in 0.019969 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表