Dos递归遍历目录文件(支持环境变量延迟扩展)

目前Internet上上充斥的dos递归遍历目录文件都不支持环境变量延迟扩展,从而导致在对遍历出的文件进行进一步处理的时候会出现问题。本文提供了一种支持环境变量延迟扩展的目录文件遍历方式。

echo off
setlocal enabledelayedexpansion
::指定起始文件夹
set DIR="%cd%"

:: 参数 /R 表示需要遍历子文件夹,去掉表示不遍历子文件夹
:: %%f 是一个变量,类似于迭代器,但是这个变量只能由一个字母组成,前面带上%%
:: 括号中是通配符,可以指定后缀名,*.*表示所有文件
for /R %DIR% %%f in (*.pdf) do ( 
SETLOCAL
echo "%%f"
set inputFile="%%f"
set "outputFile=!inputFile:.pdf=版.pdf!"
:: [command]替换为需要处理的命令
del !inputFile!
ENDLOCAL
)
pause
echo on

参考文献:
http://m.jb51.net/article/97190.htm

发布了93 篇原创文章 · 获赞 22 · 访问量 13万+

猜你喜欢

转载自blog.csdn.net/liushaofang/article/details/78954450