Guía del usuario: use el comando de cambio de nombre en Linux
¿Alguna vez ha intentado usar el comando de cambio de nombre en Linux ? ¿Quiere familiarizarse con la potencia de cambio de nombre de archivos del mundo Linux y brindarle a mv —y a usted mismo— un descanso? Cambiar el nombre es rápido, flexible y bastante más fácil. Aquí hay una guía detallada sobre este poderoso comando.
¿Qué va mal con mv?
No salió nada mal con mv . Sin embargo, el comando hace un buen trabajo. Además, puede encontrarlo en todas las distribuciones de Linux, en macOS y en otros sistemas operativos similares a Unix. Sin embargo, siempre está disponible. Pero ciertamente, no quieres una pala, pero necesitas una topadora.
El comando mv tiene un propósito en la vida y es mover archivos. Es un efecto secundario seguro que se puede usar para mover un archivo más antiguo dentro el nuevo archivo, con un nuevo nombre. El efecto es cambiar el nombre del archivo para obtener lo que desea. Pero mv no es una herramienta de personalización de cambio de nombre de archivos.
Cómo cambiar el nombre de un solo archivo con mv

Si desea utilizar mv para cambiar el nombre de un archivo, luego escriba mv, space, el nombre del archivo, el espacio y el nuevo nombre que desea que tenga el archivo. Luego presiona Enter.
También puede utilizar ls para comprobar que el archivo cambia de nombre o no
Cómo cambiar el nombre de varios archivos con mv
Las cosas se vuelven complejas después de cambiar el nombre de varios archivos. mv no tiene capacidad para cambiar el nombre de varios archivos. Debes recurrir al uso de algunos trucos útiles de Bash. Es bueno si conoce algún fu de línea de comandos de grado medio, pero la dificultad de cambiar el nombre de diferentes archivos con mv se destaca solo por la facilidad de uso mv para cambiar el nombre de un solo archivo.
Las cosas se intensifican instantáneamente.
Digamos que aquí hay un directorio con muchos archivos, de diferentes tipos. Algunos archivos tienen .prog extensión. Deseamos cambiar el nombre de esos archivos en la línea de comando para que tengan una .prg extensión.
Ven, echemos un vistazo a los archivos.
|_+_|Aquí hay un método para hacerlo que no puede recurrir a escribir un archivo de script Bash real.
|_+_|¿Funcionó o no? Revisemos los archivos y luego continuemos.
|_+_|Entonces, funciona bien. Todos son .prg archivos ahora, y no hay .prog archivos en el directorio.
¿Qué sucedió?
¿Qué hizo realmente el comando largo? Vamos a ver.
|_+_|La primera parte comienza un ciclo que va a procesar cada .prog archivo en el directorio, a su vez.
Otra parte dice lo que hará el procesamiento. hacer . Usa mv para mover cada archivo al nuevo archivo. El nuevo nombre de archivo será bastante similar al nombre del archivo original, excepto por la parte .prog. Además, se utilizará la extensión de .prg.
Aquí tienes una forma fácil
Definitivamente. Aquí esta la rebautizar mando.

No forma parte de la distribución estándar de Linux, por lo que desea instalarlo. Además, tiene un nombre diferente en varias familias de Linux, pero todas funcionan de manera similar. Simplemente sustituirá el nombre del comando correcto según el gusto de Linux que esté utilizando.
En distribuciones derivadas de Debian o Ubuntu, simplemente instale rename como esto:
En las distribuciones derivadas de RedHat o Fedora, simplemente instale prenombre como esto. Recuerde que la p inicial significa Perl.
|_+_|Para instalarlo en Manjaro Linux use el siguiente comando. Tenga en cuenta que el comando de cambio de nombre se conoce como perl-rename.
Use el comando de cambio de nombre -> Venga, intentemos una vez más
Aquí usaremos rename. Estamos haciendo esto para tener un conjunto de archivos .prog.
Vamos, usemos el comando que se proporciona a continuación para cambiarles el nombre. También lo comprobaremos con ls comando si funcionó o no. Si desea sustituir rename con el nombre de comando exacto para Linux si no puede usar Ubuntu o un Linux derivado de Debian.
Funciona bien, ahora todos son archivos .prg excluyendo .prog archivos que quedan en el directorio.
¿Que pasó aquí?
Discutámoslo en tres partes.
En el primero parte, verá el nombre del comando, rename (o prename o perl-rename, para las otras distribuciones).
El tercero último parte es *.prog, lo que explica rename para operar en todos los archivos .prog.
La segundo parte explica el trabajo que nos gusta hacer en cada nombre de archivo. El s significa sustituto. El primer término (.prog) es lo que rename buscará en cada nombre de archivo y el segundo término (.prg) es con el que se sustituirá.
nuevo comienzo vs reinicio
La parte central de los comandos o expresión central es una 'expresión regular' de Perl y es lo que proporciona el rename comandar su confiabilidad.
Modificar otras partes de un nombre de archivo
Hemos modificado las extensiones de nombre de archivo hasta ahora, cambiemos otras partes de los nombres de archivo.
En el directorio, hay muchos archivos de código fuente C. Todos los nombres de archivo tienen el prefijo jerga_. También podemos comprobar esto con ls.
Aquí reemplazamos todas las apariciones de slang_ con sl_. El formato de comando nos es bastante familiar. Solo estamos modificando el término de búsqueda, el término de reemplazo y el tipo de archivo.
|_+_|Aquí estamos buscando archivos .c y buscando slang_. Siempre que encuentre slang_ en un nombre de archivo, se sustituye por sl_.
También puede verificar el resultado del comando después de repetir el comando ls desde arriba usando los mismos parámetros:
Eliminar parte de un nombre de archivo
También podemos eliminar una parte de un nombre de archivo después de sustituir el término de búsqueda por nada.
|_+_|También podemos ver desde el ls ordene que nuestro .c todos los archivos van precedidos de sl_. Dejemos eso por completo.
La rebautizar El comando sigue el mismo formato que se mencionó anteriormente. Vamos a buscar archivos .c. El término de búsqueda es sl_, pero no hay término de sustitución. Dos barras invertidas '//' sin nada entre ellas significan una cadena vacía.
rename puede procesar cada archivo .c por turno. Además, busca sl_ en el nombre del archivo. Si lo encontró, no puede ser reemplazado por nada. Alternativamente, se elimina el término de búsqueda.
Otro uso de ls El comando confirma que el prefijo sl_ se ha borrado de todos los archivos .c.
Limitar modifica a partes particulares de nombres de archivo
Ven, usemos ls para ver los archivos que tienen el parámetro de cadena en su nombre de archivo. Entonces usaremos rebautizar comando para reemplazar la cadena a través del parámetro de cadena. Además, usamos ls una vez más para ver el efecto rebautizar comando ha tenido en esos archivos.
A continuación, verá cuatro archivos que tienen detener en su nombre de archivo. param.c, param_one.c y param_two.c tienen detener en el comenzando de su nombre. third_param.c tiene detener en el último de su nombre, justo antes de la extensión.
Puedes buscar rebautizar comando para param en todas partes en el nombre de archivo. Luego, puede reemplazarlo con el parámetro en todos los casos.
Otro uso de ls El comando nos muestra lo que ha sucedido exactamente. Ya sea detener estaba al principio o al final del nombre del archivo. También puede reemplazarlo con un parámetro.
Podemos usar los metacaracteres de Perl para purificar el comportamiento de la expresión central. Los metacaracteres son los signos que representan secuencias o posiciones de personajes. Por ejemplo, ^ significa comienzo de una cadena, (.) significa cualquier carácter individual (además de un carácter de nueva línea), $ significa final de una cadena.
Además, usamos el comienzo del metacarácter de cadena (^) para limitar nuestra búsqueda al comienzo de los nombres de archivo.
Los archivos que cambiamos de nombre se enumeran anteriormente. Además, podemos ver que el parámetro de cadena está al principio de 3 nombres de archivo y se encuentra al final de uno de los nombres de archivo.
Nuestra rebautizar El comando usa el principio del metacarácter de línea (^) antes del parámetro del término de búsqueda. Explica simplemente considerar el término de búsqueda para encontrar si está al principio del nombre del archivo. El parámetro de la cadena de búsqueda se evitará si se encuentra en cualquier otro lugar del nombre del archivo.
Mirando con ls, podemos ver que el nombre de archivo tiene un parámetro en el último del nombre del archivo no se ha cambiado. Pero los tres nombres de archivo que tienen parámetro en el comenzando de sus nombres con la cadena de búsqueda reemplazada por el valor del término sustituto.
La rebautizar el poder reside en el poder de Perl.
Mirando con agrupaciones
Este es el caso en el que probablemente tenga archivos con las mismas cadenas en sus nombres. No son similares exactamente las mismas cadenas, por lo que solo busca y la sustitución no puede funcionar aquí.
En este ejemplo usamos ls para ver qué archivos tenemos que comienzan con str. Además, hay dos de ellos, string.cy strangle.c. También podemos cambiar el nombre de ambas cadenas después de usar un método conocido como agrupación.
La expresión media del rebautizar El comando buscará cadenas dentro de los nombres de archivo que tengan la secuencia de caracteres Stri o stra. Aquí estas secuencias van seguidas de ng. Alternativamente, nuestro término de búsqueda buscará una cadena y estrangular. El término de sustitución es estallido.
|_+_| |_+_| |_+_|Después de usar ls otra vez confirma que string.c se ha convertido en bang.cy strangle.c ahora es bangle.c.
Usar el comando de cambio de nombre con traducciones
La rebautizar El comando realiza todas las acciones en los nombres de archivo conocidos como traducciones. A continuación, se muestra un ejemplo de una traducción que fuerza un conjunto de nombres de archivo a mayúsculas.
En el rebautizar comando dado a continuación, tenga en cuenta que no estamos usando un s/ para comenzar la expresión del medio, usamos y/. Explica que el comando no puede realizar una sustitución; estamos realizando una traducción.
El término a-z es una expresión de Perl. Significa que todos los caracteres en minúscula en la secuencia de la a a la z. Pero, el término A-Z representa todas las letras mayúsculas en la secuencia de la A a la Z.
La expresión del medio de este comando se puede parafrasear como si alguna de las letras minúsculas de la aa la z se encontrara en el nombre del archivo. Los reemplaza utilizando los caracteres correspondientes del orden de caracteres en mayúscula de la A a la Z.
Si desea forzar los nombres de archivo de todos los archivos .prg a mayúsculas, simplemente use este comando:
cambiar el nombre de 'y / a-z / A-Z /' * .prg
|_+_|El comando ls muéstranos que todos los .prg Los archivos de extensión ahora están en mayúsculas. Además, para ser estrictamente precisos, no son .prg archivos más. Bueno, son archivos .PRG. Asegúrese de que Linux distinga entre mayúsculas y minúsculas.
También podemos revertir ese último comando después de regresar a la posición de a-z y términos A-Z en la expresión del medio.
cambiar el nombre de 'y / A-Z / a-z /' * .PRG
ls * .prg
No puedes aprender Perl en cinco minutos
Familiarizarse con Perl es un tiempo bien invertido. Pero para comenzar a utilizar las capacidades de ahorro de tiempo del rebautizar comando, no cree que tenga mucho conocimiento de Perl para obtener grandes ventajas en el poder.
Conclusión:
Aquí se trata de 'Usar el comando de cambio de nombre en Linux'. ¿Cuáles son sus opiniones al respecto? Si desea compartir cualquier otro método o consejo con respecto al artículo, háganoslo saber a continuación. Para más consultas y preguntas, háganoslo saber en la sección de comentarios a continuación.
Leer también:


