2011-02-13 31 views
3

我有一个格式为name = value的每一行的文件。我需要使用DOS脚本读取它并将所有名称值对存储在内存中。名称来自预定义的名称列表,所以我可以拥有DOS变量列表,并在从文件中读取行时为其分配值。 请提供执行此操作的脚本。我甚至无法像使用我在互联网上获得的下面的代码那样阅读文件,它不打印任何文件: FOR/F%i IN(regfort.properties)DO @echo%i如何使用DOS批处理脚本读取带有分隔名称值对的文件?

+0

要从批处理脚本而不是命令提示符运行此操作,请将您的百分比符号加倍:`FOR/F %% i IN(regfort.properties)DO @echo %% i`。请注意,此测试只回应每行的第一个标记... – mousio 2011-04-11 08:17:05

回答

3

这是一个非常简单的脚本,它基于指定文件中的名称/值对设置一些环境变量(名称前缀为prop_),即name =值在文件中变为prop_ name =值在环境中:

setlocal disabledelayedexpansion 
FOR /F "tokens=1* delims==" %%i IN (regfort.properties) DO set "prop_%%i=%%j" 

运行set prop_将显示名称为pr的所有变量的名称和值efix prop_

相关问题