On Mon, Feb 16, 2009 at 5:33 PM, Dennis Kibbe wrote: > Can someone suggest a way to rename a directory of files like this: > > ccna.pod1.pc1.ext is renamed to ccna.pod2.pc1.ext > ccna.pod2.pc1.ext is renamed to ccna.pod3.pc1.ext > > and so on. > > (Aside: Hans, if I were able to take your scripting class I won't be asking this now. :-) > > Dennisk A quick Perl solution. #!/usr/bin/perl -w use strict; my $indir = '/path-to/the-files'; opendir(DIRECTORY, $indir) || die "Could not open $indir - $!\n"; my @files = grep /\.ext$/, readdir(DIRECTORY); closedir(DIRECTORY); @files = reverse(sort(@files)); foreach my $oldfilename (@files) { if ($oldfilename =~ /^ccna.pod(\d+)/) { my $sequence = $1 + 1; my $newfilename = 'ccna.pod' . $sequence .'.pc1.ext'; rename($oldfilename, $newfilename) || die "Could not rename $oldfilename to $newfilename - $!\n"; } } Kevin. --------------------------------------------------- PLUG-discuss mailing list - PLUG-discuss@lists.plug.phoenix.az.us To subscribe, unsubscribe, or to change your mail settings: http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss