#!/usr/bin/perl use strict; use warnings; use Data::Dumper; my %hash; { local $/ = "STOPP\n"; while( my $entry = ){ my ($anfrage,$end,$id,$log); for my $line ( split /\r?\n/, $entry ){ if( $line =~ /Login/ ){ $log = (split /\s+/, $line, 3)[-1]; } elsif( $line =~ /SID anfragen/ ){ ($anfrage) = (split /\s+/, $line, 3)[1]; } elsif( $line =~ /SID fertig/ ){ ($end,$id) = (split /\s+/, $line)[1,-1]; } } $hash{$id} = { ID => $id, ANFANG => $anfrage, ENDE => $end, LOG => $log, }; } } print Dumper \%hash; __DATA__ 17.11.2007 06:02:42 START Clients = 2 17.11.2007 06:02:42 Login=T718052 ActionId=1-VIDCK8 GF=Bereitstellung 17.11.2007 06:02:42 lese TSAM Felder 17.11.2007 06:02:43 Datei erzeugt: 1VIDCK8.xml 17.11.2007 06:02:43 SID anfragen 17.11.2007 06:02:44 SID fertig = 00000011952757638269 17.11.2007 06:02:44 lese TSAM Felder fertig 17.11.2007 06:02:44 STOPP 17.11.2007 06:04:19 START Clients = 2 17.11.2007 06:04:19 Login=T718756 ActionId=1-VIDCL4 GF=Bereitstellung 17.11.2007 06:04:19 lese TSAM Felder 17.11.2007 06:04:21 Datei erzeugt: 1VIDCL4.xml 17.11.2007 06:04:21 SID anfragen 17.11.2007 06:04:25 SID fertig = 00000119527586128810 17.11.2007 06:04:25 lese TSAM Felder fertig 17.11.2007 06:04:25 STOPP