【发布时间】:2012-04-13 05:06:57
【问题描述】:
我正在制作一个需要读取和获取 INI 文件值的 Perl 脚本。
INI 文件格式:
[name]
Property=value
例子:
[switch_6500]
cpu=1.5.1.12.4
free_memory=1.45.32.16
[oracle_db_11g]
param1=value1
param2=value2
param3=value3
param4=value4
...
如您所见,可以有任意数量的部分,其中包含任意数量的参数。部分名称/参数的名称总是不同的。
我需要做的是让我的 Perl 脚本遍历每个部分,并获取该部分的所有参数名称/值。我过去对 INI 文件所做的只是简单地指定节名称以及参数名称,如下所示:
#!/usr/bin/perl -w
use strict;
use warnings;
use Config::Tiny;
# Read the configuration file
my $Config = Config::Tiny->new();
$Config = Config::Tiny->read( 'configfile.ini' );
my $Metric1_var = $Config->{switch_6500}->{cpu};
my $Metric2_var = $Config->{switch_6500}->{free_memory};
但是,既然我有无限数量的部分名称/参数,而且不知道它们的名称,我似乎无法找到提取所有值的方法。我正在查看 Config::IniFiles 模块,它有一些有趣的东西,但我似乎无法在不知道部分/参数名称的情况下找到获取参数值的方法。
如果有人能帮助我遍历这个 INI 文件,将不胜感激。
谢谢。
【问题讨论】:
标签: perl file iteration config ini