Thread zählen und ausgeben von Geräten über SNMP (10 answers)
Opened by benjo at 2008-08-15 12:53

benjo
 2008-08-15 15:01
#113532 #113532
User since
2007-05-12
13 Artikel
BenutzerIn
[default_avatar]
wenn ich dich richtig verstanden habe dann schreibe ich die werte die ich habe
Druckertyp und IP in ein ein Hash

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
my $SNMP_Target = "192.168.100";  # IP´s Hardcoded 
my $i = 20;
my $snmp_value;

my %printers;
my $count = 0;
my $total = 0;

while ($i <= 120){
        my $printer_ip = $SNMP_Target.$i;
        $snmp_value = `snmpget -c public -v1 -OvQ $printer_ip HOST-RESOURCES-MIB::hrDeviceDescr.1 2>1`;
        $snmp_value =~ s/\"//g;
        my $printer_name = $snmp_value;
        %printers = ($printer_name => { $printer_ip => $count, $total => $count} );
        $i++;
}


Dann sortiere ich mein Hash

Code: (dl )
1
2
3
4
# Zählen der Vorkommen des Druckers
$printers{$printer_name}->{$printer_ip}++;
# Gesamtanzahl bei Druckenamen nur erhöhen, wenn Drucker mit IP noch nicht gezählt
$printers{$printer_name}->{'Gesamt'}++ if $printers{$printer_name}->{$printer_ip}==1;


nur das klappt nicht, mach ich hier ein Denk fehler und muss das nochmal in eine Schleife reinsetzen ?, denn so durchläuft er doch denn Hash nicht.

View full thread zählen und ausgeben von Geräten über SNMP