2013-08-02 5 views
0

Я пишу скрипт, который анализирует метрический порт и выводит метрические имена и значения в хэш, затем считывает хэш и передает имена и значения метрик в gmetric. Однако, так как у меня есть несколько экземпляров одного и того же хода процесса, у меня есть повторяющиеся имена в одном поле хэша:сопоставление общих значений и добавление целых чисел в хэш

[MacOSX_Leopard,2 
Win32_Windows,5 
MacOSX,2 
Win32_Windows,5] 

То, что я хотел бы сделать, это быть в состоянии собирать и добавлять эти значения в одну общую для каждой метрики. Как/Каков наилучший способ сделать это в perl?

+0

Perl хэши не могут иметь дубликаты ключей, так что, когда вы говорите: «У меня есть повторяющиеся имена в одном поле хэша «Я думаю, вы имеете в виду что-то еще. Можете ли вы задать вопрос в терминах программирования относительно того, где конкретно вы имеете эти данные о именах и значениях ОС, хранящихся? – sundar

ответ

0

Если я вас правильно понял, это то, что вы смысл сделать:

#!/usr/bin/perl 

$value{"MacOSX_Leopard"} += 5; 
$value{"MacOSX_Leopard"} += 3; 
$value{"MacOSX"} += 3; 
$value{"Windows"} += 2; 

foreach $key (keys %value) { 
    print "$key\t",$value{$key},"\n"; 
} 

Результат:

MacOSX 3 
Windows 2 
MacOSX_Leopard 8 
Смежные вопросы