10 votos

¿Por qué falta el comando renombrar en MacOS?

Suelo renombrar los archivos y directorios con la función mv mando. Estoy leyendo un libro sobre el shell bash que menciona el rename de mando. Cuando ejecuté man rename se mostró una página de manual. Sin embargo, cuando introduje rename en el shell bash, informó:

-bash: rename: command not found

He investigado un poco y he descubierto que se puede instalar el rename con Homebrew.

  • ¿Hay alguna buena razón para no instalarlo con Homebrew?

  • ¿Hay algo que se pueda hacer con el rename que no se puede hacer con el mv ¿comando?

También tengo curiosidad por saber si hay una explicación conocida de por qué el rename no existe en primer lugar. ¿Y por qué hay una página man para un comando que no existe?

1 votos

Después de buscar un poco más, descubrí que la razón por la que hay una página man es porque está documentando una llamada al sistema BSD, no el comando. Mi pregunta se refiere a la instalación de esta utilidad con homebrew, por lo que es aplicable al mac.

13voto

Nimesh Neema Puntos 69

En la instalación por defecto de MacOS, la página man de rename está disponible en la sección 2. Como puede observar en la página man, rename no es un comando sino una llamada al sistema BSD.

La fórmula de Homebrew llamada rename es un script de Perl. Usted debe estar bien con la instalación de la misma. De hecho puede darte mucha más flexibilidad que el comando mv simple.

Después de haber instalado la utilidad de renombramiento a través de Homebrew, ejecutando man rename mostrará la página de manual de la utilidad instalada y no la llamada al sistema BSD.

También tengo curiosidad por saber si hay una explicación conocida de por qué el comando no existe en primer lugar.

cambiar el nombre de no es un comando estándar de Unix.

¿Y por qué hay una página man para un comando que no existe?

Como se mencionó anteriormente, la página man presente se refiere a la llamada del sistema con el mismo nombre.

0 votos

Acabo de ver tu respuesta después de instalarlo con homebrew. Ahora man rename muestra la documentación de la "User Contributed Perl Documentation" para la utilidad.

1voto

Piotr Gogolin Puntos 11

Con rename se puede buscar y reemplazar una cadena en varios archivos de forma sencilla:

rename 's/oldstring/newtext/' file00*

Es realmente útil. Con mv no puedes hacer lo mismo. A menos que consigas que el bucle funcione:

for file in file00*; do new=${file/oldstring/newtext}; mv —- "$file" "$new"; done

-1voto

mcstellar Puntos 218

Puedes instalar usando brew https://brewinstall.org/Install-rename-on-Mac-with-Brew/

Espero que esto resuelva tu problema.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X