my $session = Net::Telnet::Cisco-> new (Host => '10.100.2.200'); $session->login('admin', 'cisco'); # Execute a command my @output = $session->cmd('show run'); my $string = join '',@output; my @infos = split /interface ATM/,$string; #shift @infos; my %hash; for my $interface(@infos){ my ($bez) = $interface =~ /^([^\n]+)/; my @daten = $interface =~ /(daten .*?cbr 128)/sg; for my $daten(@daten ){ my ($id,$ip) = $daten=~ /(\s*[\d\/]+).*?protocol ip ((?:\d{1,3}\.){3}\d{1,3})/s; push @{$hash{'ATM'.$bez}}, [$id,$ip]; } } for my $atm(keys %hash){ print sprintf("%10s | %10s | %15s\n",$atm,'Daten','IP'); print sprintf("%10s | %10s | %15s\n",' ',@$_) for @{$hash{$atm}}; } | DATEN | IP | 22/180 | 10.200.50.81 | 22/190 | 10.200.50.83