Cómo cambiar el nombre de múltiples archivos en Linux

Cómo cambiar el nombre de múltiples archivos en Linux

Renombrar archivos en sistemas Linux generalmente se maneja por el MV (mover) comando. La sintaxis es solo MV viejo.txt nuevo.TXT. Simple, pero ¿qué pasa si tenemos múltiples archivos que deben renombrarse a la vez, incluso cientos de ellos?? La utilidad MV predeterminada no puede manejar el cambio de nombre de más de un archivo a menos que hagamos un poco de scripting. También hay otras utilidades que podemos instalar para resolver el problema, como rebautizar y MMV.

En esta guía, le mostraremos cómo usar el MV comando así como el rebautizar y MMV Herramientas para cambiar el nombre de múltiples archivos en su distribución de Linux. Revisaremos varios ejemplos para que pueda entender la sintaxis y cómo usar cada método.

En este tutorial aprenderás:

  • Cómo cambiar el nombre de varios archivos a la vez con el comando MV
  • Cómo instalar el cambio de nombre en las principales distribuciones de Linux
  • Cómo instalar MMV en las principales distribuciones de Linux
  • Cómo usar MMV, a través de ejemplos de comando
  • Cómo usar renombrar, a través de ejemplos de comando
Renombrar varios archivos a la vez en Linux Requisitos de software y convenciones de línea de comandos de Linux
Categoría Requisitos, convenciones o versión de software utilizada
Sistema Cualquier distribución de Linux
Software MV, renombrar, MMV
Otro Acceso privilegiado a su sistema Linux como root o a través del sudo dominio.
Convenciones # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de sudo dominio
ps - Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado

Cambiar el nombre de múltiples archivos a la vez con el comando MV



Renombrar múltiples archivos con el comando MV es más fácil si conoce un poco de scripting bash. Eche un vistazo a algunos de los ejemplos a continuación para ver algunos usos comunes con este método.

  1. El siguiente comando agregará un .Extensión del archivo txt a todos los archivos en su directorio de trabajo actual.
    $ para i en $ (ls); do mv $ i $ i.TXT; hecho 
  2. Para eliminar una extensión de archivo de todos los archivos, puede usar este comando.
    $ para i en $ (ls *.TXT ); hacer mv $ i $ i%.*; hecho 
  3. También podemos cambiar la extensión del archivo de cada archivo. El siguiente comando cambiará todos los archivos con el .extensión de registro a .TXT.
    $ para i in *.registro; hacer MV - "$ i" "$ i%.registro.txt "; hecho 
  4. También puede usar el comando Find, junto con -ejecución Opción o comando XARGS para cambiar el nombre de varios archivos a la vez. Este comando agregará .Bak a cada archivo que comience con el patrón "archivo".
    $ Find . -Escriba f -name 'archivo*' -print0 | xargs -null -i  mv  .bak 
  5. Este comando usa Find y el -ejecución opción para agregar "_backup" a todos los archivos que terminan en el .extensión txt.
    $ Find . -nombre "*.txt "-exec mv   _backup \; 
  6. También podemos usar Xargs para hacer lo mismo. Este comando aceptará la entrada estándar del LS comando, luego use XARGS para agregar "_backup" a todos los archivos que terminan en el .extensión txt.
    $ ls *.txt | xargs -i  mv   _backup 


  7. Para cambiar todos los archivos con el .txt en el directorio actual para tener solo letras minúsculas, este comando hará el trabajo.
    $ para i in 'ls *.TXT'; do mv "$ i" "'echo $ i | tr' [a-z]" [a-z] ""; hecho 

La ventaja de este método es que no necesitamos ningún software Linux adicional: solo usamos la utilidad MV nativa y, a veces, junto con LS, Find o XARGS. Sin embargo, como hemos visto en estos ejemplos, puede ser bastante complejo hacer algo simple como cambiar el nombre de algunos archivos. Consulte algunos de los otros métodos a continuación para ver algunas opciones más convenientes que requieren instalación.

Instalar Cambiar Utilidad

Su distribución de Linux ya puede tener rebautizar instalado por defecto. En caso de que aún no esté instalado, puede usar el comando apropiado a continuación para instalarlo a través del Administrador de paquetes de su sistema.

Para instalar el nombre de nombre en Ubuntu, Debian y Linux Mint:

$ sudo apto instalación de cambio de nombre 

Para instalar el nombre de nombre en Centos, Fedora, Almalinux y Red Hat:

$ sudo dnf instalación prename 

Para instalar el nombre de nombre en Arch Linux y Manjaro:

$ sudo Pacman -S Perl -Rename 

cambiar el nombre de ejemplos de comando

El rebautizar el comando acepta expresión de perl Para hacer el cambio de nombre real. Si ya está familiarizado con esta sintaxis, renombrar será muy fácil de usar. Si no, no se preocupe, tenemos algunos ejemplos a continuación que lo ayudarán a entenderlo.



Aquí hemos compilado algunos de los escenarios más comunes que necesitaría para cambiar el nombre de múltiples archivos a la vez. Estos comandos suponen que los archivos que desea cambiar el nombre se encuentran en su directorio de trabajo actual. Siempre puede especificar la ruta a otros directorios si lo desea.

Hay algunas opciones con las que puede usar rebautizar. El -norte La opción le mostrará lo que los cambios cambiarán el nombre, sin hacer los cambios realmente. Esto te ayuda a evitar cualquier cambio indeseable. El -V (detenidamente) La opción imprimirá los nombres de los archivos que han sido renombrados correctamente.

  1. Este comando cambiará el nombre de los archivos mayúsculas a minúsculas.
    $ renombrar 'y/a-z/a-z/' * 

    O, para convertir en minúsculas a mayúsculas:

    $ renombrar 'y/a-z/a-z/' * 
  2. Para cambiar la extensión de un montón de archivos, use la siguiente sintaxis. Este ejemplo en particular convertirá .registrar archivos a .archivos txt.
    $ Rename 's/\.registro $/\.TXT/' *.registro 
  3. Para capitalizar la primera letra de cada nombre de archivo, use el siguiente comando.
    $ Rename 's/\ b (\ w)/\ u $ 1/g' * 
  4. Para eliminar todos los espacios en blanco de los nombres de archivo, ejecute este comando.
    $ Cambiar "S/ *// G" * 

    O, para reemplazar espacios con subrayos:

    $ Rename 's/\ s+/_/g' * 
  5. Para eliminar una extensión de archivo de un montón de archivos, use la siguiente sintaxis. Este ejemplo eliminará el .extensión de BAK.
    $ Rename 's/\.bak $ // ' *.bak 

Instalar Utilidad MMV

Puede usar el comando apropiado a continuación para instalar MMV a través del Administrador de paquetes de su sistema.

Para instalar MMV en Ubuntu, Debian y Linux Mint:

$ sudo apt install mmv 


Para instalar MMV en CentOS, Fedora, Almalinux y Red Hat:

$ sudo dnf instalación mmv 

Para instalar MMV en Arch Linux y Manjaro:

$ git clone https: // aur.archinux.org/mmv.git $ cd mmv/ $ makepkg -si 

Ejemplos de comando MMV

La característica más atractiva de MMV es su capacidad para cambiar el nombre fácilmente de muchos archivos aceptando comodines en el comando. Esto le permite agregar o eliminar fácilmente ciertos patrones de los nombres de los archivos, o incluso organizar el texto dentro de los nombres. Consulte algunos de los ejemplos a continuación para aprender la sintaxis de la herramienta MMV y vea algunos de los comandos más comunes que puede encontrarse ejecutando con ella. Tenga en cuenta que puede usar el -norte Opción con MMV para ver los cambios de vista previa.

  1. Use este ejemplo para cambiar la extensión del archivo en un montón de archivos. Este comando cambiará todos los archivos con extensión .htm a .html.
    $ mmv '*.HTM "#1.html ' 
  2. Este comando reemplazará la primera aparición de "foo" con "bar" en todos los nombres de archivo.
    $ mmv '*foo*"#1bar#2' 
  3. El siguiente comando le da una idea de cómo puede usar MMV para reorganizar partes de un nombre de archivo. Este ejemplo tomará archivos como acceso.log-dbserver y rechazado.Webserver y renombrarlos a Access-Dbserver.registro y Webserver rechazado.registro, respectivamente. Para que esto funcione, solo necesitamos tener un patrón consistente, como el tablero y el período en este caso.


    $ mmv '*.Log-*"#1-#2.registro' 
  4. Cambie todos los nombres de archivo a letras minúsculas usando este comando.
    $ mmv '*"#l1' 
  5. Por el contrario, cambie los nombres de archivos a todas las letras mayúsculas con esta.
    $ mmv '*"#u1' 

Pensamientos de cierre

En esta guía, aprendimos varios métodos diferentes para cambiar el nombre de múltiples archivos simultáneamente en Linux. También vimos una multitud de ejemplos de línea de comandos que pueden cubrir muchos escenarios diferentes o ser fácilmente adaptados para adaptarse a situaciones similares. El cambio de nombre a granel se puede hacer a través de utilidades bash nativas como MV, LS, XARGS y encontrar, o podemos instalar el MMV o cambiar el nombre de utilidad para que nuestra vida sea un poco más fácil. Cada método tiene sus fortalezas y debilidades, así que use el que crea que será más conveniente para usted.

Tutoriales de Linux relacionados:

  • Cosas para instalar en Ubuntu 20.04
  • Una introducción a la automatización, herramientas y técnicas de Linux
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Bucles anidados en guiones Bash
  • Comandos de Linux: los 20 comandos más importantes que necesitas ..
  • Mastering Bash Script Loops
  • Comandos básicos de Linux
  • Lista de las mejores herramientas de Kali Linux para pruebas de penetración y ..
  • Mint 20: Mejor que Ubuntu y Microsoft Windows?
  • Descarga de Linux