http://www.perlmonks.org?node_id=95671


in reply to File renaming and removal to a subdirectory
in thread File renaming and removal to a subdirectory

When I started with perl, I greatly enjoyed 'Learning Perl' from Randall L. Schwartz aka merlyn. Great book for the first steps in perl.

There are two things that you need to do here. First, create a list of files you want to move around. That's done by globbing: @list = <*.puz>.

Than you'll have to rename that file to add the 'A' and move it at the same time, the first part is done by regexes, see perlre: s/(\.puz)$/A$1/; and the second by concatenation: $name= 'subdir/' . $name.

You'll have to rename every file, so loop over your list with for:

for my $new ( <*.puz> ){ my $old = $new; $new =~ s/(\.puz)$/A$1/; $new = 'subdir/' . $new; rename $old, $new; }

Updated