Board logo

标题: [文本处理] 批处理怎样遍历一个根目录下的文件? [打印本页]

作者: kevinll    时间: 2013-4-22 18:06     标题: 批处理怎样遍历一个根目录下的文件?

具体需求是:有一个根目录C,里面有好多文件夹,文件夹里又有好多文本文件,现在想遍历指定的一些文件夹,把里面的所有文本文件的名字按路径方式写入到一个新文本里, 例如,根目录下有A,B,C,D文件夹,想遍历A 和B下的文件。则结果是,
C:\A\A1.TXT
C:\A\A2.TXT
C:\B\B1.TXT
C:\B\B2.TXT
....
作者: BAT-VBS    时间: 2013-4-22 18:16

  1. @echo off
  2. >list.txt dir /s /b "C:\A\"
  3. >>list.txt dir /s /b "C:\B\"
复制代码

作者: kevinll    时间: 2013-4-22 19:57

回复 2# BAT-VBS


   谢谢!追问一下,能不能根据参数来决定遍历那些文件夹?因为文件夹太多了。。。A,B,C,D,E,ERE,JGK......
作者: BAT-VBS    时间: 2013-4-22 22:28

回复 3# kevinll
  1. @echo off
  2. (for %%i in (A,B,C,D,E,ERE,JGK) do (
  3.     dir /s /b C:\%%i\
  4. ))>list.txt
复制代码

作者: terse    时间: 2013-4-23 00:19

直接DIR 如果文件夹名含空格 用引号
  1. @echo off
  2. call:dir A,B,C,D,E,ERE,JGK
  3. exit
  4. :dir
  5. pushd c:\
  6. >list.txt dir /s /b /a-d %*
  7. popd
复制代码

作者: sanboo2007    时间: 2013-4-23 07:53

好啊,很实用




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