如何在使用bash“eval”时禁用变量扩展

时间:2011-09-07 10:27:54

标签: bash eval variable-expansion

嗨我有以下属性文件(something.properties)

SERVER1_PROPERTY1=123    
SERVER1_PROPERTY2=${SERVER1_PROPERTY1}/123

并按照bash脚本获取其中一个属性:

#!/bin/bash

. something.properties

SRV="SERVER1"

eval PROPERTY2=\$${SRV}_PROPERTY2

echo $PROPERTY2

结果是:

123/123

但我希望它是

${SERVER1_PROPERTY1}/123

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:1)

当您获取文件(. something.properties)时,将完成扩展。

在属性文件中写入SERVER1_PROPERTY2='${SERVER1_PROPERTY1}/123'以禁用扩展。