#!/usr/bin/perl # rename script taken from lwall # $op = shift; if ($op eq "") { $op = "-h"; } if ($op =~ /^-/) { if ($op =~ /^-t/) { $test = 1; } if ($op =~ /^-i/) { $interactive = 1; } if ($op =~ /^-h/) { print "usage: ren [-t -i] pattern files ...\n\n"; print "-t test, do not rename.\n"; print "-i interactive, query before renaming.\n\n"; print "Examples:\n\n"; print "ren 's/\.orig\$//' *.orig\n"; print "ren 's/(^)/Beatles - /' *.mp3\n"; print "ren 'y/A-Z/a-z/ unless /^Make/' *\n"; print "ren '$_ .= \".bad\"' *.f\n"; print "ren 'print \"$_: \"; s/foo/bar/ if =~ /^y/i' *\n\n"; print "Don't forget to quote your command!\n\n"; exit; } $op = shift; } INFILE: for (@ARGV) { $was = $_; eval $op; die $@ if $@; if ($test) { printf("Will rename %s ---> \n %s\n",$was,$_) unless $was eq $_; } else { if ($was ne $_) { if ($preview) { printf("Rename %s ---> \n %s [Y/N]?",$was,$_); $ans = ; if (!($ans =~ /^[Yy]/)) { next INFILE; } } $res = rename($was,$_); if ($res) { printf("Renamed %s ---> \n %s\n\n",$was,$_); } else { printf("Error renaming %s ---> \n %s\n\n",$was,$_); } } } }