下面是批处理获取指定目录下的所有文件列表的攻略:
步骤1:设置工作目录
批处理程序执行时需要知道它所在的工作目录,因此我们需要先将其设置为指定目录。使用 cd
命令即可轻松完成:
cd /d D:\example\folder
这里将工作目录设置为了 D:\example\folder
。
步骤2:获取指定目录下的所有文件列表
使用 dir
命令可以列出指定目录下的所有文件和子目录:
dir /b /s > filelist.txt
这里使用了 /b
和 /s
选项,分别表示简要输出(只输出文件名)和包含子目录的完整路径。将其输出到 filelist.txt
文件中。
示例1:获取指定目录下指定类型的文件列表
如果你只需要获取指定后缀的文件列表,可以使用管道符号 |
将 dir
命令的输出传递给 findstr
命令来筛选。例如,获取 D:\example\folder
目录下所有的 .txt
文件列表:
cd /d D:\example\folder
dir /b /s | findstr /i "\.txt$" > txtlist.txt
这里使用了 /i
选项忽略大小写,并使用正则表达式 \.[tT][xX][tT]$
筛选出以 .txt
结尾的文件。将其输出到 txtlist.txt
文件中。
示例2:获取指定目录下的所有文件和子目录列表,并排除某个子目录
如果你需要排除某些不需要的子目录,可以使用 for
命令逐行检查 dir
命令的输出内容。例如,获取 D:\example\folder
目录下所有的文件和子目录列表,并排除 D:\example\folder\notwanted
目录:
cd /d D:\example\folder
(for /f "delims=" %%i in ('dir /b /s') do (
if not "%%i"=="D:\example\folder\notwanted\*" echo %%i
)) > filelist.txt
这里使用了 for
命令配合 dir
命令和 if
判断来逐行检查文件列表。delims
参数指定分隔符,设置为默认值空格和制表符,确保路径中包含空格的文件名不会被截断。如果检查结果不满足排除目录的条件,将文件路径输出到 filelist.txt
文件中。
希望这些信息对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:批处理(bat)获取指定目录下的所有文件列表 - Python技术站