`
dylan.wu
  • 浏览: 136010 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

shell中读取ini配置。

 
阅读更多

利用awk 的范围模板来读取ini中的配置
   范围模板匹配从第一个模板的第一次出现到第二个模板的第一次出现之间所有行。如果有一个模板没出现,则匹配到开头或末尾。
   如$ awk '/root/,/mysql/' test将显示root第一次出现到mysql第一次出现之间的所有行。

假设tmp.ini文件内容为

[common]

key1="common 1"

key2="common 2"

 

[com1]

key1="com1 1"

key2="com1 2"

 

[com2]

key1="com2 1"

key2="com2 2"

 

假设要读取com1的key1值,那么使用以下的脚本就可以实现(假设key中部应该包含空格)

cat tmp.ini | awk 'BEGIN{FS="=";OFS=":";}/\[‘com1'\]/,/\[.*[^('com1')].*\]/{gsub(/[[:blank:]]*/,"",$1);if(NF==2 && $1=="key1"){gsub(/^[[:blank:]]*/,"",$2);gsub(/[[:blank:]]*$/,"",$2);print $2;}}'

 更通用的写法应该就是

section="com1";
key="key1";
cat tmp.ini | awk 'BEGIN{FS="=";OFS=":";}/\['$section'\]/,/\[.*[^('$section')].*\]/{gsub(/[[:blank:]]*/,"",$1);if(NF==2 && $1=="'$key'"){gsub(/^[[:blank:]]*/,"",$2);gsub(/[[:blank:]]*$/,"",$2);print $2;}}'
分享到:
评论

相关推荐

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

    ini文件格式一般都是由节、...所以这样单独哪出来比较好些,而且可以多个shell使用一个ini文件(与扩展名无关)来做配置也可以的。只需要在shell里面加一个自定义函数就可以了。 代码如下: # __readINI [配置文件路径+

    Shell脚本读取标准ini配置文件Demo

    在IT领域,尤其是在系统管理和自动化任务中,Shell脚本经常被用来处理各种任务,其中之一就是读取配置文件。本文将详细讲解如何使用Shell脚本来读取标准的ini配置文件,并通过一个具体的Demo来演示这一过程。 ini...

    Shell脚本读取ini配置文件的实现代码2例

    ### Shell脚本读取INI配置文件的两种方法 本文将详细介绍如何通过Shell脚本实现对INI格式配置文件的读取,其中包括两种不同的方法:一种较为简单的方法适用于基本的需求,另一种更为复杂的实现则提供了更多的功能。...

    cfg.rar_cfg_ini配置读取_linux ini_linux ini文件_linux 读取ini

    标题中的"cfg.rar_cfg_ini配置读取_linux ini_linux ini文件_linux 读取ini"表明了本文将探讨如何在Linux环境中处理ini配置文件,这通常涉及到程序的配置管理和数据存储。Ini文件是一种简单易读的文本格式,常用于...

    unix shell awk 修改ini文件的脚本

    标题“unix shell awk 修改ini文件的脚本”明确指出了解决的问题:在Unix环境中,利用shell脚本和awk工具修改.ini文件。这涉及到了几个关键概念: - **Unix**:一种广泛使用的多用户、多任务操作系统。 - **Shell**...

    linux下兑取ini配置文件

    ### 读取ini文件的工具 在Linux下,没有内置的命令行工具直接用于读取或修改`.ini`文件。但可以通过以下两种常见方法来处理: 1. **使用脚本语言**:你可以使用支持解析`.ini`文件的脚本语言,如Python、Perl或...

    读取配置文件的shell脚本实现

    本文将以“读取配置文件的shell脚本实现”为例,深入讲解如何使用awk命令解析配置文件并提取所需信息。 配置文件通常包含键值对,例如在例子中的`Config.ini`,它定义了网络配置项。awk命令是Linux shell中强大的...

    php.ini安全配置

    综上所述,通过合理配置`php.ini`文件中的各项安全参数,可以有效提高服务器的安全性。特别需要注意的是,除了上述提到的关键设置外,还需要关注服务器的整体安全策略,包括但不限于操作系统、数据库、Web服务器等...

    shell脚本可配置多线程备份mysql5.7.8以后数据库.rar

    在shell脚本中,可以使用条件语句(if...else)、循环(for、while)等结构,以及读取配置文件(source)的功能来实现上述功能。例如,读取一个包含配置信息的`.ini`文件,并根据文件内容动态生成`mysqldump`命令。 ...

    凯立德端口读取工具

    然后,运行工具读取端口信息,根据返回的结果,在shell.ini中修改相应的端口设置。最后,重启导航软件,检查是否能成功接收和处理GPS信号。如果遇到任何问题,参照“使用说明.txt”提供的步骤进行排查,或者查找相关...

    UPX Shell的delphi源码

    5. **配置文件的读取和写入**:`UPXShell.cfg`可能使用Delphi的内置函数或第三方库来读取和保存用户设置。这涉及到字符串处理、文件流操作以及可能的XML或ini解析。 6. **多线程和异步操作**:在处理大量文件或执行...

    run jar with ini settings

    `runJar.exe`可能是一个批处理文件或者封装了Java运行环境的可执行脚本,它的任务是读取`runJar.ini`中的配置,然后构造并执行正确的`java`命令行。这样做的好处是可以保持命令行简洁,同时允许灵活地调整运行参数,...

    解决Windows下PHP的exec、shell_exec等函数不能正常运行的方法

    6. 在IUSR用户的权限列表中,勾选“读取和执行”权限,确保“完全控制”下的“应用到”设置为“此文件,子文件夹和文件属性”。 7. 点击“确定”保存更改。 完成上述操作后,IUSR用户将具有执行`cmd.exe`的权限,...

    asp.net core中灵活的配置方式详解

    首先,我们需要了解*** Core中配置是如何工作的。在*** Core应用中,通常会使用`IConfiguration`接口,它代表了配置数据的键值对集合。`IConfiguration`会从多种配置源中读取数据,比如文件、环境变量、命令行参数等...

    dotnet C# 高性能配置文件读写库 dotnetCampus.Configurations 简介.rar

    `dotnetCampus.Configurations` 是一个轻量级的库,它提供了一种灵活且高效的机制来读取和写入配置文件,支持多种格式如XML、JSON和INI。这个库特别适合那些需要频繁读取和更新配置信息的项目,它的高性能特性确保了...

    iniget:一个简单的Shell实用程序,用于从INI文件中提取信息

    `iniget`是一个小型的Shell实用程序,专门设计用于处理INI配置文件,这是一种常见的文本格式,常在各种软件设置中使用。这个工具允许用户通过命令行接口方便地从这些文件中检索特定的信息,而无需编写复杂的脚本或...

Global site tag (gtag.js) - Google Analytics