Shell實(shí)現(xiàn)讀取ini格式配置文件方法
ini文件格式一般都是由節(jié)、鍵、值三部分組成
格式:
[第一節(jié) ]
第一個(gè)鍵 = 值
第二個(gè)鍵 = 第二個(gè)值
[第二節(jié) ]
第一個(gè)鍵 = val1,val2,val3
例子:
[COM]
KINGGOO = jb51.net
其實(shí)這個(gè)作用沒(méi)那么特別大,但多個(gè)shell如果每個(gè)配置信息都在shell文件里面寫(xiě),懂的人還好,半懂+不仔細(xì)的人要如何改,改幾個(gè)地方估計(jì)腳本就不能運(yùn)行了。所以這樣單獨(dú)哪出來(lái)比較好些,而且可以多個(gè)shell使用一個(gè)ini文件(與擴(kuò)展名無(wú)關(guān))來(lái)做配置也可以的。只需要在shell里面加一個(gè)自定義函數(shù)就可以了。
# __readINI [配置文件路徑+名稱(chēng)] [節(jié)點(diǎn)名] [鍵值]
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
例子:有一個(gè)ini格式文件kinggoo.ini,內(nèi)容如下
[IP]
ip = jb51.net
[MAILLIST]
mail = admin@jb51.net
腳本文件內(nèi)容:
#!/bin/bash
# __readINI [配置文件路徑+名稱(chēng)] [節(jié)點(diǎn)名] [鍵值]
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}
執(zhí)行腳本文件既可
當(dāng)自己使用時(shí),請(qǐng)驗(yàn)證后使用。
相關(guān)文章
CentOS 6.0 啟動(dòng)時(shí)出現(xiàn)fstab錯(cuò)誤時(shí)的修復(fù)方法
下面小編就為大家?guī)?lái)一篇CentOS 6.0 啟動(dòng)時(shí)出現(xiàn)fstab錯(cuò)誤時(shí)的修復(fù)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-03-03Linux 中 RPM包 安裝 查詢(xún) 卸載命令小結(jié)及yum命令詳解
RPM 的全稱(chēng)為Redhat Package Manager ,是由Redhat 公司提出的,用于管理Linux 下軟件包的軟件。Linux 安裝時(shí),除了幾個(gè)核心模塊以外,其余幾乎所有的模塊均通過(guò)RPM 完成安裝。RPM 有五種操作模式,分別為:安裝、卸載、升級(jí)、查詢(xún)和驗(yàn)證2015-11-11Linux/Nginx如何查看搜索引擎蜘蛛爬蟲(chóng)的行為
本文給大家介紹Linux/Nginx如何查看搜索引擎蜘蛛爬蟲(chóng)的行為,清楚蜘蛛的爬行情況對(duì)做SEO優(yōu)化有很大的幫助。需要的朋友通過(guò)本篇文章學(xué)習(xí)下吧2015-10-10開(kāi)發(fā)必備Linux常用的幾個(gè)命令分享
Linux作為一個(gè)高度成熟和強(qiáng)大的操作系統(tǒng),擁有非常豐富的命令行工具,對(duì)于Java開(kāi)發(fā)者來(lái)說(shuō),掌握一些常用的Linux命令可以大大提高工作效率,尤其是在服務(wù)器端開(kāi)發(fā)時(shí),本文小編給大家分享了一些常用命令,需要的朋友可以參考下2023-10-10linux和windows下的自動(dòng)ftp腳本(shell bat)
linix和windows下的自動(dòng)ftp腳本(shell bat),供大家學(xué)習(xí)參考2013-02-02