我正在製作一個需要讀取和獲取INI文件值的Perl腳本。Perl:通過INI文件迭代
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文件來幫助我,那將不勝感激。
謝謝。
非常感謝,這正是我一直在尋找的。 – user1300922 2012-03-29 14:54:17