in reply to FileName Change

This may, or may not be, what you want:
#!/usr/bin/perl use strict; use warnings; use File::Basename; use File::Find::Rule; my @files = File::Find::Rule->file() ->in( 'c:/test/'); foreach my $file ( @files ) { my ( $old_name, $path ) = File::Basename::fileparse( $file ); my $new_name = $old_name; $new_name =~ s/^ABC/ABCD/; $new_name =~ s/^XYZ/XYZD/; next if $new_name eq $old_name; rename( $path . $old_name, $path . $new_name ) or die "Renaming $old_name to $new_name: $!"; # or copy, as per your update # require File::Copy; # File::Copy::copy( $path . $old_name, $path . $new_name ) # or die "Renaming $old_name to $new_name: $!"; }

Replies are listed 'Best First'.
A reply falls below the community's threshold of quality. You may see it by logging in.