#!/usr/bin/perl use strict; use warnings; my $file1='file1.txt'; my $file2='file2.txt'; my %lines; open(my $fh, '<', $file1) or die("ERROR open $file1 $!\n"); while(my $line=<$fh>) { $lines{$line}=1; } close($fh); open(my $fh, '<', $file2) or die("ERROR open $file2 $!\n"); while(my $line=<$fh>) { print "$line" if($lines{$line}); } close($fh);