Hi, I wanted a script that would rename files from lower to upper case. I have something but I am a bit worried about going live with it as I can imagine there is plenty of room for error and I really don't want to knacker my filesystem.
Could I get any comments of suggestion on what I have. I want something safe/secure. I am not sure about what would happen if it was passed more than one argument. Should I allow more than one argument? Are the any gotcha's to watch out for? Thanx, Dp. =============== upper.pl=============== #!/usr/bin/perl -Tw # upper.pl # Upper case all lowercase file in a given directory. use File::Copy; use strict; my $dir = shift; my $found = 0; opendir(DIR,$dir) or die "Can't open $dir: $!\n"; foreach my $name (sort grep !/^\./, readdir DIR) { # Credit Randal L. Schwartz if ($name =~ /[a-z]/) { # Look for lc file. Wot about files # with numbers?? ++$found; if ($dir !~ /\/$/) { # Add a slash if there is'nt one $dir = "$dir"."/"; } (my $new = $name) =~ tr/[a-z]/[A-Z]/; # trans the name $name = "$dir"."$name"; $new = "$dir"."$new"; #mv("$name","$new") or die "Can't upper $name: $!\n"; print "$name -> $new\n"; } } print "Found $found lowercase files\n" -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>