ITPub博客

首页 > Linux操作系统 > Linux操作系统 > SHELL读取 ini 格式文件做配置文件

SHELL读取 ini 格式文件做配置文件

Linux操作系统 作者:dxm2025 时间:2015-01-26 16:18:53 0 删除 编辑

ini文件格式一般都是由节、键、值三部分组成

 

格式:

[第一节 ]

第一个键 = 值

第二个键 = 第二个值

[第二节 ]

第一个键 = val1,val2,val3

例子:

[COM]

KINGGOO = kinggoo.com

其实这个作用没那么特别大,但多个shell如果每个配置信息都在shell文件里面写,懂的人还好,半懂+不仔细的人要如何改,改几个地方估 计脚本就不能运行了。所以这样单独哪出来比较好些,而且可以多个shell使用一个ini文件(与扩展名无关)来做配置也可以的。只需要在shell里面 加一个自定义函数就可以了。

# __readINI [配置文件路径+名称] [节点名] [键值]
function __readINI() {
 INIFILE=$1;	SECTION=$2;	ITEM=$3
 _readIni=`awk -F '=' '/\['$SECTION'\]/{a=1}a==1&&$1~/'$ITEM'/{print $2;exit}' $INIFILE` echo ${_readIni}
}

使用方法:

__readINI file.ini SECTION KEY

例子:有一个ini格式文件kinggoo.ini,内容如下

[IP] ip = kinggoo.com [MAILLIST] mail = admin@kinggoo.com

脚本文件内容:

#!/bin/bash # __readINI [配置文件路径+名称] [节点名] [键值]
function __readINI() {
 INIFILE=$1;	SECTION=$2;	ITEM=$3
 _readIni=`awk -F '=' '/\['$SECTION'\]/{a=1}a==1&&$1~/'$ITEM'/{print $2;exit}' $INIFILE` echo ${_readIni}
} # 使用方法: # Net address
_IP=( $( __readINI kinggoo.ini IP ip ) ) echo ${_IP} # mail send 
_mailList=( $( __readINI kinggoo.ini MAILLIST mail ) ) echo ${_mailList}

执行脚本文件既可

当自己使用时,请验证后使用。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30015039/viewspace-1415783/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: Linux time函数
请登录后发表评论 登录
全部评论

注册时间:2014-11-09

  • 博文量
    169
  • 访问量
    233174