我总是在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()
答案 0 :(得分:1)
您不需要分配给变量以将其传递给函数。被调用函数接收参数%1
,可以使用%~1
语法进行细化。
我还建议您更改CD
的{{1}}命令。这样(1)您的PUSHD
变量可以包含驱动器号或网络路径,(2)bat可以稍后使用%MPWR_PATH%
干净地恢复当前目录。
因此,请阅读POPD
和HELP PUSHD
并尝试此操作。
HELP CALL