opendir(my $dir, '/home/users/perl/test/') or die "$!"; my @files = readdir($dir); foreach my $file(@files){ next unless ($file =~/\.xml/); open(my $txt, '<', $file) or die "$!"; my $new_filename = $txt; open(my $out, '>', $new_filename) or die "$!"; while (<$txt>) { chomp; $_ =~ s/.*.*//; print $out "$_\n"; } }