Я делаю 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-файла, это будет с благодарностью.
Спасибо.