使用shell脚本从文件中读取键值



我有一个配置文件,例如名为(abc.conf)

abc.conf
------- 
location1=/opt/test1/locationx
location2=/opt/test1/locationy
location3=/opt/test1/locationz

我有一个示例代码,它工作良好,如果我不使用这样的路径和斜杠

getProperty()
{
PROPERTY_FILE=$1
PROP_KEY=$2
PROP_VALUE=`cat $PROPERTY_FILE | grep -w "$PROP_KEY" | cut -d'=' -f2`
echo $PROP_VALUE
}

使用像

VALUE=$(getProperty $CONF_FILE $LOCATION1)

但是这个函数有限制使用它,当我用它来获取location1,它也获取location2/location3像类似的位置在一起,而不是特定的键值。它应该只对唯一值起作用。

代码运行正常

调用函数

$ getProperty abc.conf location1(2 or 3)
/opt/test1/locationx

使用awk适当地限制键匹配到第一个字段

getProperty()
{
awk -F= -v key=$2 '$1 == key {print $2} "$1"
}

相关内容

  • 没有找到相关文章

最新更新