用Shell读写INI配置文件
下面案例可供参考
config.ini代码如下(示例):
[config]
key='name'
[config1]
key='name1'
[config2]
key='name2'
ini.sh代码如下(示例):
# !/bin/bash
function ReadINIfile()
{
awk -F '=' '/\['$2'\]/{a=1}a==1&&$1~/'$3'/{print $2;exit}' $1
}
function WriteINIfile()
{
sed -i "/^\[$2\]/,/^\[/ {/^\[$2\]/b;/^\[/b;s/^$3*=.*/$3=$4/g;}" $1
}
if [ "$4" = "" ] ;then
ReadINIfile $1 $2 $3
else
WriteINIfile $1 $2 $3 $4
fi
读取INI
./ini.sh config.ini config key
输出结果
'name'
.写入INI
./ini.sh config.ini config key 123
输出结果
[config]
key=123
[config1]
key='name1'
[config2]
key='name2'
$1 INI文件路径 ; $2 INI文件[config] ; $3 INI文件 key ; $4 key的新值