En mi sistema Debian (bueno, mi sistema LMDE, pero lo suficientemente cerca), tengo al menos 3 rename
programas diferentes :
/usr/local/bin/rename
: Este es un guión de Perl, escrito por Tom Christiansen. Curiosamente, parece que no puedo encontrar qué paquete lo instaló:$ dpkg -S /usr/local/bin/rename dpkg-query: no path found matching pattern /usr/local/bin/rename
/usr/bin/prename
: otro script perl, escrito por Robin Barker, este es parte delperl
paquete:$ dpkg -S /usr/bin/prename perl: /usr/bin/prename
/usr/bin/file-rename
: otro script de Perl, no hay información clara sobre la autoría, pero se mencionan tanto a Larry (presumiblemente Wall) como a Robin (presumiblemente Barker). Este es instalado por elrename
paquete y también está vinculado a/usr/bin/rename
:$ dpkg -S /usr/bin/file-rename rename: /usr/bin/file-rename
También tengo rename.ul
de util-linux
pero ignoremos ese por ahora. ¿Cuál es la diferencia entre estos 3 scripts de Perl? Todos parecen tener la misma página de manual man rename
, man file-rename
y man prename
todos me dan la misma página.
Podría revisar las secuencias de comandos e intentar comprender las diferencias, pero eso no es trivial y espero que alguien sepa qué características tiene cada una que las demás no. Puntos de bonificación por explicar por qué el mundo de Debian necesita tres scripts de cambio de nombre de Perl separados.
util-linux-ng
paquete. % file = rename / usr / bin / rename: ELF 64-bit LSB ejecutable, x86-64, version 1 (SYSV), ...rename
deutil-linux
que esrename.ul
en Debian yrename
en los sistemas RedHat. Lo menciono en el penúltimo párrafo de mi pregunta.update-alternatives --display rename
muestra? Me pregunto si es parte de una alternativa posterior a la instalación.-v
y-i
opciones. Es un script antiguo, antiguo y antiguo sin la documentación adecuada fuera de su mensaje de uso, pero es un caballo de batalla estándar para las reescrituras de nombres de archivo en masa . Es uno de quizás dos o tres guiones que siempre quiero conmigo sin importar a dónde vaya.Respuestas:
No estoy seguro de si esto debería ser un comentario, pero es solo una respuesta parcial:
http://lists.alioth.debian.org/pipermail/perl-maintainers/2014-February/004113.html
tiene lo que parecen ser las semillas del desorden. Específicamente:
Lo
libfile-rename-perl
mencionado anteriormente ahora se reemplaza porrename
:Entonces, Perl tiene el suyo propio
rename
que Debian no mantiene y proporciona/usr/bin/prename
. Los desarrolladores de Debian mantienen unrename
paquete (aparentemente anteriormente conocido comolibfile-rename-perl
) que es el paquete que proporciona/usr/bin/rename
: un enlace simbólico para el/etc/alternatives/rename
cual es un enlace simbólico al/usr/bin/file-rename
script.El guión de Tom Christiansen se incluye con el
Unicode::Tussle
módulo de Perl . Probablemente lo haya instalado y eso es lo que proporcionó/usr/local/bin/rename
.fuente