#!/usr/bin/perl use strict; use warnings; my $OUTPATH=''; my $A=''; my $B=''; my $C=''; open(my $temp_fh, '<', "$OUTPATH/$B") or die("Can't open $B ($!)\n"); my @referenz=<$temp_fh>; close($temp_fh); open(my $out_fh, '>', "$OUTPATH/$C") or die("Can't open $C ($!)\n"); open(my $in_fh, '<', "$OUTPATH/$A") or die("Can't open $A ($!)\n"); MAINLOOP: while(my $line = <$in_fh>) { my $value=substr($line,0,20); $value+=0; for my $ref_line (@referenz) { if($ref_line =~ /$value/) { print $out_fh $ref_line; next MAINLOOP; } } print $out_fh $line; } close($in_fh); close($out_fh);