我正在编写一个shell脚本来读取包含key = value对的文件并将这些变量设置为环境变量。我试着用下面的代码,批处理脚本读取文件并设置为环境变量
if EXIST "test.dat" (
for /F "tokens=*" %%I in (test.dat) do @set %%I
echo setting JAVA_HOME to :: %JAVA_HOME%
echo setting JAVA to %JAVA%
)
假设test.dat
有JAVA_HOME=c:\JDK1.6
和JAVA=c:\JDK1.6\bin\java
运行上面的代码不设置这些变量,即使我有do
set %%I
声明。两个回声语句不打印任何东西。我在这里错过了什么?为什么从文件中读取的行没有设置到环境中?
相同延迟扩展,当您试图http://stackoverflow.com/questions/15479542/batch-script-set-command-not-working-properly – 2013-03-18 16:22:33