У моїй системі Debian (ну, в моїй системі LMDE, але досить близько), у мене є щонайменше 3 різні renameпрограми:
/usr/local/bin/rename: Це сценарій Perl, написаний Томом Крістіансен. Як не дивно, я не можу знайти, який пакет встановив його:$ dpkg -S /usr/local/bin/rename dpkg-query: no path found matching pattern /usr/local/bin/rename/usr/bin/prename: ще один сценарій Perl, написаний Робіном Баркером, цей є частиноюperlпакету:$ dpkg -S /usr/bin/prename perl: /usr/bin/prename/usr/bin/file-rename: ще один сценарій Perl, жодної чіткої авторської інформації, але згадуються і Ларрі (імовірно Стіна), і Робін (імовірно, Баркер). Цей встановленийrenameпакетом і також посилається на/usr/bin/rename:$ dpkg -S /usr/bin/file-rename rename: /usr/bin/file-rename
У мене теж є rename.ulз , util-linuxале давайте ігнорувати , що один на даний момент. Яка різниця між цими 3 сценаріями Perl? Вони, схоже, мають однакову сторінку man rename, man file-renameі man prenameвсі дають мені ту саму сторінку.
Я міг би розібратися в самих сценаріях і спробувати зрозуміти відмінності, але це не тривіально, і я сподіваюся, що хтось дізнається, які особливості у кожного є у інших. Бонусні бали за пояснення, чому світу Debian потрібні три окремі сценарії перейменування Perl.
renameвід util-linuxчого є rename.ulна Debian та renameна системах RedHat. Я згадую це в передостанньому абзаці свого запитання.
update-alternatives --display renameпоказує для вас? Цікаво, чи це частина після встановленої альтернативи.
-vта -iваріанти. Це старий, старий, старий сценарій без належної документації поза його повідомленням про використання, але це стандартний робочий коник для масових переписувань імені файлів. Це один із, можливо, двох-трьох сценаріїв, які я завжди хочу зі собою, незалежно від того, куди йти.
util-linux-ngпакету. % file = перейменувати / usr / bin / rename: ELF 64-бітний LSB виконуваний файл, x86-64, версія 1 (SYSV), ...