#Variablen-Deklaration my $file = 'logs/relevante_macs.txt'; my %switch_macs; #Öffnen der Datei mit den übrigen, relevanten MACs und Einlesen in ein array open (my $in, '<', $file) or die "Can't open $file: $!"; my @jet_macs = <$in>; #??? Erstellen eines Hashes mit den Switchen als Key und den MACs als Value (Was bedeutet das genau mit Key udn Value?) foreach my $line (@jet_macs) { my ($mac, $switch) = split ' ', $line; push @{$switch_macs{$switch}}, $mac; } #???? Macht was genau print Dumper \%switch_macs; #Hash wurde erstellt, jetzt werden die .cfg-Dateien erstellt foreach my $switch (keys %switch_macs) { if ( -e "$switch.cfg" ) { print "Sorry, won't overwrite an existing file\n"; next; } else { my $file_out; #Datei zum Schreiben öffnen open($file_out, '>', "logs/$switch.cfg") or die "Can't open $file_out: $!"; #Header schreiben print $file_out "#HEADER\n"; #??? Was macht das? foreach my $mac ( @{$switch_macs{$switch}} ) { #Schreiben der MACs in die Datei print $file_out "show multiauth session mac $mac\n"; } #Footer schreiben print $file_out "FOOTER\n"; #Datei schließen close $file_out; } }