Board logo

标题: [文本处理] 批处理如何遍历目录获取文本个数? [打印本页]

作者: 2553248740    时间: 2014-12-3 10:54     标题: 批处理如何遍历目录获取文本个数?

现在指定目录下获取文件个数 麻烦帮我看下为什么输出是0 怎么改可以得到预期效果
  1. echo off
  2. setlocal
  3. set inputDir = "C:\99Pursey"
  4. set /a num = 0
  5. for %%m in (" dir /s /b %inputDir%\*") do (
  6. if not %%m == "test.bat" (
  7. echo %%m
  8. set /a num = num + 1
  9. )
  10. )
  11. echo "total num :"%num%
  12. endlocal
  13. pause
复制代码

作者: DAIC    时间: 2014-12-3 10:59

把等号左右两边的空格全部删掉
作者: apang    时间: 2014-12-3 11:15

本帖最后由 apang 于 2014-12-3 11:26 编辑
  1. @echo off
  2. pushd "C:\99Pursey\"
  3. for /f %%a in ('dir /a-d/b/s^|findstr /iv \\test\.bat$^|find /c /v ""') do set n=%%a
  4. echo,%n%
  5. pause
复制代码

作者: terse    时间: 2014-12-3 12:08

既然指定文件名 那就直接 dir 省个 findstr 啊
作者: CrLf    时间: 2014-12-3 14:28

回复 4# terse


    他可能是为了避免把 test.bata 也算进去
作者: terse    时间: 2014-12-3 15:05

回复 5# CrLf
因为我看楼主无统配的
作者: CrLf    时间: 2014-12-3 17:16

回复 6# terse


    哦,仔细看了下,楼主的要求是排除 test.bat




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