.bp .au "TSC \- perl.xx" .c The Rename Program .2 Think how many times you've wanted to translate all filename to lower case from upper, or rename all `` .T *.f '' files to `` .T *.f.bak '' using just one command. .sp .2 Here's a mini-program of Larry Wall's called \f(BIrename\fP that can be used in all these ways: .sp .5 .b rename 's/\e.orig$//' *.orig rename 'y/A-Z/a-z/ unless /^Make/' * rename '$_ .= ".bad"' *.f rename 'print "$_: "; s/foo/bar/ if =~ /^y/i' * find /tmp -name '*~' -print | rename 's/^(.+)~$/.#$1/' .e .bp .au "TSC \- perl.xx" .c Rename Code .b ($op = shift) || die "Usage: rename expr [files]\en"; if (!@ARGV) { @ARGV = ; chop(@ARGV); } for (@ARGV) { $was = $_; eval $op; die $@ if $@; rename($was,$_) unless $was eq $_; } .e