En nuestros equipos normalmente almacenamos diversa información de múltiples formatos, ya sea música, fotos, imágenes, vídeos o archivos a los cuales recurrimos frecuentemente para su uso. Por regla general asignamos un nombre a cada elemento pero si por alguna razón es necesario editar o renombrar ese elemento por un nombre mas sugestivo o coherente, o simplemente que permita identificar su contenido, en Linux disponemos de dos alternativas para realizar el cambio de nombre de archivo por lotes, esto en caso de que sean múltiples elementos y manualmente implicaría mucho tiempo. Por eso vamos a ver cómo renombrar archivos linux con sonsola y así ser más sencillo cambiar nombre directorio Linux rápidamente.
Una opción es a través de la interfaz de línea de comandos o mediante el uso de una aplicación independiente que ofrece grandes funcionalidades. Si se quiere cambiar el nombre de un único archivo la mejor opción es de manera gráfica, pero a veces solo lo podemos hacer desde terminal, o queremos cambiar muchos archivos, y esto último no es muy efectivo hacerlo así. A través de este tutorial Solvetic explicará formas integrales para renombrar archivos en Linux y así saber cambiar nombre fichero linux.
En este tutorial vamos a ver cómo renombrar archivos o directorios en Linux usando la terminal, veremos cómo hacerlo usando el comando mv y el comando rename mas otras formas en modo gráfico como son GPRename o Métamorphose2.
Siguiendo estos pasos veréis que no es nada complejo. La práctica es lo importante!
1. Renombrar archivos Linux con mv
Quizás uno de los métodos más sencillos para cambiar el nombre de archivos y carpetas en Linux es haciendo uso del comando mv (move - mover), y aunque su función básica es la de mover archivos y carpetas, también resulta útil si deseamos cambiar el nombre de un elemento.
Así, el comando mv mueve o cambia el nombre de los archivos y directorios en el sistema de archivos de una forma simple pero funcional.
La sintaxis a usar es la siguiente:
mv (opción) Archivo1.ext Archivo2.ext
Archivo1 hace referencia al archivo original y Archivo2 al nuevo nombre a asignar al archivo.
En este caso hemos renombrado el archivo Solvetic.mp3 a Solvetic1.mp3.
Esta misma sintaxis puede ser usada para cambiar el nombre de una carpeta, así, en caso que los archivos no se encuentren en la carpeta actual, será necesario especificar la ruta completa así:
mv /home/user/Solvetic/archivo1.ext /home/user/Solvetic/archivo2.extEs importante anotar que el comando mv requiere permiso de escritura para la carpeta que contiene los archivos a renombrar y para el caso de los archivos y carpetas del sistema, el usuario debe contar con los permisos de root para llevar a cabo el proceso de cambio de nombre de los archivos, esto se logra anteponiendo mv con sudo o su.
La opción -i (interactivo) ofrece una capa adicional de protección que le pide al usuario que confirme el cambio de nombre del archivo antes de que se ejecute con el fin de evitar cambios accidentales.
Si queremos cambiar la extensión de varios ficheros a la vez, porque tienen una que no deseamos, en vez de hacerlo uno a uno, podemos ejecutar:
mv *.extensionActual *.extensionNuevaA lo mejor con unos ejemplos se ve mejor.
Queremos cambiar el nombre de la carpeta solvetic por solveticTest:
mv solvetic solveticTestQueremos cambiar las extensiones de todos los archivos del directorio en el que estamos (el cambio será de png a jpg):
mv *.png *.jpgEsta forma de renombrar es muy fácil de usar, pero es más potente la siguiente opción que veremos.
2. Renombrar archivos Linux con rename
Es un comando que nos permite renombrar elementos en Linux haciendo uso de expresiones regulares lo cual, aunque puede ser más complejo, también es útil para trabajo con lotes de archivos.
El primer paso es instalar rename ejecutando la siguiente línea:
sudo apt install rename
La sintaxis general de rename es la siguiente:
rename (opción) 's/nombre_antiguo/nuevo_nombre' archivo1.ext archivo2.extLa letra "s" hace referencia a "sustituto" y es la parte principal de la expresión regular a usar en rename, las comillas simples son obligatorias, las demás opciones disponibles son:
El comando rename acepta comodines para cambiar el nombre de varios archivos del mismo tipo, y también funciona en las extensiones de archivos iguales.
Por ejemplo, podemos cambiar todos los archivos .png a .jpg ejecutando lo siguiente:
rename 's/.png/.jpg/' *Veamos esto en imagen para verlo claro.
El símbolo de comodín (*) hace referencia a que todos los archivos en la carpeta serán editados. La expresión regular cuenta con opciones integradas llamadas modificadores los cuales son:
- "g": global; afecta a todas las apariciones de la expresión.
- "i": ejecuta la sustitución insensible a mayúsculas y minúsculas.
Estas se escriben al final de la expresión antes de la comilla simple de cierre y pueden ser combinadas, por ejemplo:
rename -n 's/Sol/test/gi' *.mp3En este caso cambiaremos el termino Sol por test:
Otra opción a usar es la letra "y" la cual puede transformar los nombres de archivo en un nivel de más alto nivel de uso, su uso es frecuente para cambiar el nombre del archivo seleccionado, por ejemplo:
rename 'y/a-z/A-Z/' *.jpgAhora vemos otro ejemplo.
En este caso hemos cambiado los nombres de todos los archivos .mp3 de minúscula a mayúscula.
Para ver más usos prácticos del comando rename lo vamos a hacer directamente con ejemplos, porque se va a entender mejor.
Si queremos cambiar de extensión .txt a .bak:
rename 's/\.txt$/\.bak/' *.txtSi queremos quitar el texto 2016 de unas fotos con extensión jpg:
rename 's/ 2016//g' *.jpgSi queremos convertir las mayúsculas a minúscular a todos los nombres:
rename y/A-Z/a-z/ *.extension_ficherosSi lo quieres al revés, es pasar minúsculas a mayúsculas simplemente cambia y/A-Z/a-z/ por y/a-z/A-Z/.
3. Renombrar archivos Linux con Métamorphose2
Esta es una aplicación desarrollada para editar o renombrar archivos en Linux con grandes funcionalidades integradas.
Métamorphose2 es un programa diseñado para el cambio de nombres de archivo por lotes de forma gráfica, es de fuente abierta y multiplataforma, dentro de sus características tenemos:
- Descarga gratuita y código abierto con código fuente en GitHub.
- Acepta lotes para renombrar archivos y carpetas.
- Permite guardar la configuración de cambio de nombre para un uso posterior ahorrando tiempo.
- Podemos aplicar operaciones de cambio de nombre como modificación, reemplazo o inserción al prefijo o sufijo, por carácter, posición y más.
- Soporte para numeración personalizada, texto de imagen y metadatos de audio, fecha y hora.
- Soporte para la numeración secuencial con el tamaño de paso personalizado, el número de inicio y el recuento de restablecimiento.
- Soporte para expresiones regulares.
Para instalar esta utilidad contamos con dos opciones:
sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt update sudo apt install metamorphose2
Una vez descargado, seremos redirecciones al asistente de software del sistema para proceder con la instalación:
Ahora, una vez instalado, vamos a la pestaña "Seleccionador" y allí iremos a la ruta donde se encuentran los archivos a renombrar:
Una vez realizado esto, vamos a la pestaña "Renombrador" y daremos doble clic sobre alguna de las opciones ubicadas en el costado lateral izquierdo:
En este ejemplo hemos seleccionado "Modificar" y en el panel central podemos definir la acción deseada como cambiar entre mayúsculas o minúsculas, quitar acentos, cambiar extensiones y más, en la parte inferior podemos ver el resultado obtenido.
Una vez se configure esto, pulsamos en el botón "Empezar" para ejecutar la acción.
4. Renombrar archivos Linux con GPRename
GPRename es un renombrador de lotes para archivos y directorios, GPRename puede reemplazar, eliminar, insertar, borrar y numerar archivos y directorios de forma secuencial.
Para su instalación vamos a ejecutar el siguiente comando. Ingresamos la letra S para confirmar la descarga e instalación de GPRename.
sudo apt install gprename
Para obtener la funcionalidad de leer etiquetas de metadatos EXIF en Ubuntu 18.04, será necesario instalar renrot el cual puede cambiar el nombre y rotar los archivos según las etiquetas EXIF. Para su instalación vamos a ejecutar el siguiente comando:
sudo apt install renrot
Para acceder a GPRename ejecutamos en la terminal:
gprename
En la ventana desplegada iremos al directorio donde se encuentran los archivos a renombrar, en la parte inferior definimos la acción a ejecutar y en el panel superior derecho podemos ver el resultado que será procesado. Pulsamos en el botón "Aplicar" para efectuar los cambios.
5. Renombrar carpeta Linux
Vamos a usar el siguiente comando donde tendremos que especificar tanto el directorio a renombrar o carpeta además de la ruta de destino.
mv <directorio origen> <directorio final>
Por ejemplo, vamos a cambiar el nombre de "Solvetic" de un directorio por el nombre de "Solvetic2" que guardamos en la ruta inicial del sistema:
mv /home/user/Solvetic /home/user/Solvetic2
Ahora si quieres puedes hacer un comando de listado para ver que aparece tu directorio creado con el nombre nuevo en esa ruta.
ls -l /home/user
6. Renombrar directorio Linux
Vamos a usar el comando rename para cambiar el nombre
rename <nombre> <directorio de destino>
Vamos a hacer un ejemplo donde cambiamos las mayúsculas por mnúsculas en todos los directorios:
rename 'y/A-Z/a-z/' *
Después visualiza los cambios con este comando:
ls -lCon alguna de estas opciones será posible renombrar archivos Linux y renombrar directorio Linux de una forma completa según sea necesario.