Windows批处理脚本,用于列出目录中的文件并分配给变量

时间:2014-11-11 21:40:47

标签: windows batch-file

我总是在Unix中编写脚本,但现在需要在Windows中执行某些操作。 要求是属性文件包含路径变量。该脚本需要列出该路径下的所有文件,然后在每个文件上调用一个函数。这就是我一直在尝试的

@For /F "tokens=1* delims==" %%A IN (C:\Work\sample\myFile.properties) DO (
IF "%%A"=="MPWR_EXPORT_PATH" set MPWR_EXPORT_PATH=%%B
IF "%%A"=="FILE_SHARE" set FILE_SHARE=%%B
)
cd %MPWR_EXPORT_PATH%
FOR %%i IN (*) DO echo %%i

问题是: 如何将%% i分配给变量,然后将文件名传递给函数DISPAY()

1 个答案:

答案 0 :(得分:1)

您不需要分配给变量以将其传递给函数。被调用函数接收参数%1,可以使用%~1语法进行细化。

我还建议您更改CD的{​​{1}}命令。这样(1)您的PUSHD变量可以包含驱动器号或网络路径,(2)bat可以稍后使用%MPWR_PATH%干净地恢复当前目录。

因此,请阅读POPDHELP PUSHD并尝试此操作。

HELP CALL