UNIX脚本 - 设置动态变量(间接变量引用)

时间:2014-05-18 22:50:36

标签: bash variables unix dynamic

如何从输入文件中设置shell变量?

您好,

我需要在shell脚本中从.ini文件设置动态变量。

假设输入文件是 input.ini

var1=val1
var2=val2
var3=val3

在脚本中我想设置var1,var& var3分别为val1,val2和amp;获得val3

echo $var1
val1
echo $var2
val2
...

我试过了:

file="input.ini"
while IFS== read -r f1 f2
do
   eval dynvar=$f1
   dynvar=$f2    
done <"$file"

echo $var1
echo $var2
echo $var3
echo $ varx 命令不提供输出。我该如何解决这个问题?

提前感谢。

2 个答案:

答案 0 :(得分:1)

source input.ini

或者

. input.ini

更多信息

<source | .> filename [arguments]
    Execute commands from a file in the current shell.

答案 1 :(得分:0)

解决

使用:

file="install.ini"
while IFS== read -r f v
do
  eval "$f=$v"   
done <"$file"

做了这个伎俩。