当前位置: 首页 > 编程笔记 >

Shell实现读取ini格式配置文件方法

申屠浩歌
2023-03-14
本文向大家介绍Shell实现读取ini格式配置文件方法,包括了Shell实现读取ini格式配置文件方法的使用技巧和注意事项,需要的朋友参考一下

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

格式:

[第一节 ]
第一个键 = 值
第二个键 = 第二个值
[第二节 ]
第一个键 = val1,val2,val3
例子:


[COM]

KINGGOO = jb51.net


其实这个作用没那么特别大,但多个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 = jb51.net

[MAILLIST] mail = admin@jb51.net


脚本文件内容:

#!/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}


执行脚本文件既可

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

 类似资料:
  • 本文向大家介绍Python实现读写INI配置文件的方法示例,包括了Python实现读写INI配置文件的方法示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python实现读写INI配置文件的方法。分享给大家供大家参考,具体如下: 更多关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python面向对象程序设计入门与进阶教程》、《Python数据结

  • 本文向大家介绍C++读取INI配置文件类实例详解,包括了C++读取INI配置文件类实例详解的使用技巧和注意事项,需要的朋友参考一下 本文以实例讲解了C++读取配置文件的方法。 一般情况下,我们都喜欢使用ini扩展名的文件作为配置文件,可以读取及修改变量数值,也可以设置新的组,新的变量,本文的实例代码一个是读取INI的定义文件,另一个是CIniFile类实现文件,两者结合,完美实现VC++对INI文

  • 本文向大家介绍C++读写INI配置文件的类实例,包括了C++读写INI配置文件的类实例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C++读写INI配置文件的类。分享给大家供大家参考。具体如下: 1. IniReader.h文件: 2. IniReader.cpp文件: 3. IniWriter.h文件: 4. IniWriter.cpp文件: 5. main.cpp文件: 希望本文所述

  • 本文向大家介绍C#实现读写ini文件类实例,包括了C#实现读写ini文件类实例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#实现读写ini文件类。分享给大家供大家参考。具体如下: 这个C#类封装了对INI配置文件进行操作所需的各种函数,包括读取键值、读取键值、删除段落等 希望本文所述对大家的C#程序设计有所帮助。

  • 配置文件使用的是 JSON 格式。 JSON 中使用的数据结构和变量名对应着 Burp UI 中显示选项。生成配置文件的最简单方法是在 Burp UI 中创建所需的配置,然后保存为配置文件。您还可以手动编辑现有的配置文件,其内容是很容易就可以看懂的。 部分配置文件可以在需要时使用。您可以通过每个子工具选项卡的配置面板上的”选项(Options)”按钮来保存该区域的配置,或者通过从完整配置的文件中删

  • INI条目被定义在一个完整的独立的的块,位于上文中所说的MINIT方法的同一个源文件,并且用下面的一对宏来定义,并在这对宏之间放入一个或者多个条目PHP_INI_BEGIN()和PHP_INI_END() 这些宏方法和上一章所提到的ZEND_BEGIN_MODULE_GLOBALS()和ZEND_END_MODULE_GLOBALS()有着相同的用法。这些结构是用静态数据的实例来声明,而不仅仅是提