您的位置:首页 > 运维架构 > Shell

阶段总结 ———— linux shell 解析ini配置文件

2014-07-23 17:09 239 查看
比如说有这么一份ini文件,test.ini,记录了下面这些内容:

[Database]
HOST_NAME=localhost
USER_NAME=root
USER_PASSWORD=12345
DATABASE_NAME=test
Capacity=4294967296
Revmax=7
[Storage]
Storage-Url=https://10.xx.xx.xx:8080/auth/v1.0
Storage-User=test:xxx
Storage-Key=test
Storage-Container=test


现在我想用shell来抓出里面的[Database]下的USER_NAME、USER_PASSWORD、DATABASE_NAME,
那么可以这么写脚本,里面用到了awk,关于awk没有深入研究,我也是查到一些资料完成这个功能而已,

#!/bin/bash
CONF_FILE_PATH="/usr/local/myConf/test.ini"
INI_USER_NAME=""
INI_USER_PSW="“
INI_DB_NAME=""

function getUserInfo()
{
INI_USER_NAME=$(awk -F '=' '/\[Database\]/{a=1}a==1&&$1~/USER_NAME/{print $2;exit}' ${CONF_FILE_PATH})
INI_USER_PSW=$(awk -F '=' '/\[Database\]/{a=1}a==1&&$1~/USER_PASSWORD/{print $2;exit}' ${CONF_FILE_PATH})
INI_DB_NAME=$(awk -F '=' '/\[Database\]/{a=1}a==1&&$1~/DATABASE_NAME/{print $2;exit}' ${CONF_FILE_PATH})
}

#echo .......


以上,仅作参考
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息