sysopen logfile,'/tmp/file.log',O_RDONLY; # Open file my $ReadLen = 1024; # Inital block to read my $N1; # Storage for number #1 my $N2; # Storage for number #2 while (! (defined($N1) and defined($N1)) { my $Buffer; sysseek logfile,($ReadLen * -1),2 sysread logfile,$Buffer,$ReadLen; $Buffer =~ /processed\=\'destination\(df\_suu\=(\d+).*?$/s and $N1 = $1; $Buffer =~ /processed\=\'destination\(d_mysql_suu\=(\d+).*?$/s and $N2 = $1; $ReadLen += 1024; } close logfile; print "df_suu=$N1\nd_mysql_suu=$N2\n";