GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo cambiar el nombre de muchos archivos usando una expresión regular?

Quiero cambiar el nombre de muchos archivos en Mac OS X (10.7.2). No tengo el paquete perl para rename comando.

Mis archivos tienen nombres como "T452-102456-0.png" y quiero eliminar la parte "-0". Sé que puedo realizar esta acción escribiendo mi propio script php-cli, pero me gustaría conocer una solución más fácil y rápida.

Respuesta aceptada:

Bash o Ksh junto con mv podría resolverlo:

for f in *.png; do mv -n "$f" "${f/-0}"; done

En caso de que el nombre del archivo también tenga un "0" después del primer guión y el "-0" esté siempre delante del punto, es posible que desee incluir ese punto también en la expresión:

for f in *.png; do mv -n "$f" "${f/-0./.}"; done

Pero como esa regla de cambio de nombre es simple, si tiene rename desde el util-linux paquete, eso también lo hará:

rename '-0.' '.' *.png

Linux
  1. Cómo administrar archivos de registro usando Logrotate en Linux

  2. ¿Cómo ordenar los archivos por sus permisos usando Ls?

  3. ¿Cómo cambiar el nombre de varios archivos usando Buscar?

  4. Cómo transferir archivos de forma segura usando SCP

  5. sed - cómo hacer grupos de expresiones regulares usando sed

Cómo cambiar el nombre de archivos y directorios en Linux

Cómo cambiar el nombre de los archivos usando la línea de comandos en Linux

Cómo cambiar el nombre de un archivo (s) en Linux

Cómo sincronizar archivos y directorios usando Zaloha.sh

Cómo editar varios archivos usando Vim Editor

Cómo cambiar el nombre de los archivos en Ubuntu 20.04