use File::Basename; # ... while (<$fh>) { chomp; if (/^M/) { my $filename = fileparse($_); # ... } }