Use it exactly like your bash rename attempt. You can use pretty much any perl in-place-modifier construct - s/X/Y/, tr/A-Z/a-z/ (upper->lower), etc.
Not sure where I found this originally, but it's extremely handy.
Al
Scott Taylor wrote:
Hello all,
I've done this before, but so long ago I can't find it again. I have a bunch of files with spaces in them and I want to rename them with the spaces removed.
I have a rename command that came with RH7.2 but doesn't do the job rename 's/\ //g' * does nothing in bash
So I wrote a script many moons ago to do this but I can't remember which server it was on, let alone how I did it. Something with tr and mv methinks.
anyone?
- : send the line "unsubscribe linux-admin" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
-- Alok K. Dhir <adhir@xxxxxxxxxxxxxx> Symplicity Corporation http://solutions.symplicity.com 703 351 6987 (w) | 703 351-6357 (f)
#!/usr/bin/perl if (@ARGV == 0) { die "usage: rename PATTERN FILESPEC\n"; } $pattern=shift; foreach (@ARGV) { my $oldname=$_; my $newname=$_; eval ("\$newname=~$pattern"); rename($oldname, $newname); }