@xtccc
2017-05-28T08:14:14.000000Z
字数 392
阅读 1495
假设有myconf.conf文件:
x = X
hello=HELLO
c= C
d =D
希望给定key,返回value,可以这么做:
getValue() {
local file="myconf.conf"
local key=$1
local value=`awk -F ' *= *' '$1=="'$key'"{print $2}' $file`
echo $value
}
v=$(getValue $1)
echo "v = $v"
值得注意的是,
awk -F ' *= *' '$1=="'$key'"{print $2}' $file
不能写成
awk -F ' *= *' '$1=="$key"{print $2}' $file
因为,在单引号内, $key是不能被正确解析的。
参考 Expansion of variable inside single quotes in a command in bash shell script