use warnings; use strict; use File::Slurp; my @md5_file = read_file("md5"); my $md5_string = join( "", @md5_file ); my $dirname = "path/to/files/to/be/checked"; while(my $file = (<'$dirname'/*>)) { open( my $fh, '<', $file ); binmode($fh); my $md5 = Digest::MD5->new->addfile($fh)->hexdigest; if ( $md5_string =~ $md5) { print "$md5 matches!\n"; } else { print "$md5 doesnt match ;(\n"; } }