On my Debian system (well, my LMDE system, but close enough), I have at least 3 different rename programs:
/usr/local/bin/rename: This is a Perl script, written by Tom Christiansen. Oddly enough, I can't seem to find which package installed it:$ dpkg -S /usr/local/bin/rename dpkg-query: no path found matching pattern /usr/local/bin/rename/usr/bin/prename: another perl script, written by Robin Barker, this one is part of theperlpackage:$ dpkg -S /usr/bin/prename perl: /usr/bin/prename/usr/bin/file-rename: yet another Perl script, no clear authorship information but both a Larry (presumably Wall) and a Robin (presumably Barker) are mentioned. This one is installed by therenamepackage and is also symlinked to/usr/bin/rename:$ dpkg -S /usr/bin/file-rename rename: /usr/bin/file-rename
I also have rename.ul from util-linux but let's ignore that one for now. What is the difference between these 3 Perl scripts? They all seem to have the same man page, man rename, man file-rename and man prename all give me the same page.
I could go through the scripts themselves and try to understand the differences but that is not trivial and I am hoping someone will know what features each has that the others don't. Bonus points for explaining why the Debian world needs three separate Perl rename scripts.
util-linux-ngpackage. % file =rename /usr/bin/rename: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), ...renamefromutil-linuxwhich isrename.ulon Debian andrenameon RedHat systems. I mention it in the penultimate paragraph of my question.update-alternatives --display renameshow for you? Wondering if it's part of a post-installed alternative.-vand-ioptions. It’s an old, old, old script without proper documentation outside its usage message, but it’s a standard workhorse for en-masse filename rewrites. It’s one of maybe two or three scripts that I always want with me no matter where I go.