Una forma de propósito general de cambiar el nombre de todos los archivos en un directorio

Una forma de propósito general de cambiar el nombre de todos los archivos en un directorio

He estado creando funciones bash simples para esto con find -execo analizando ls o usando bash globbing, etc. cada vez que tuve un gran problema y tuve que ir a un nuevo método, una vez la lista de argumentos era demasiado larga, otra vez archivos que ya tenían un El nombre como 2se sobrescribió cuando se cambió el nombre de otro archivo a 2.

Una vez fue un problema con Unicode, otra vez con el espacio en el nombre del archivo, otra vez con *o &en el nombre del archivo, etc. Así que pensé en venir aquí y preguntarles cuál es la forma más eficiente y sólida de propósito general de cambiar el nombre de todos los archivos en un directorio para que tengan nombres secuenciales.¡no importa qué!. No importa qué tan largos sean los nombres de los archivos y no importa cuál sea su nombre original o qué extensión tengan y no importa si tienen caracteres que no sean ASCII.

Entonces mis requisitos son:

  1. Que funcione con nombres de archivos largos.
  2. Que funcione con caracteres Unicode.
  3. Que funciona si los archivos tienen espacios o caracteres especiales.
  4. Que no sobrescriba ningún archivo sobre otro.
  5. Que sea lo más rápido posible :D

Respuesta1

Si su Ubuntu no es un servidor, no lo trate como tal. pyRenamer de los repositorios predeterminados de Ubuntu tiene todas las características que busca, incluida la compatibilidad con expresiones regulares, y como es un programa GUI, no necesita romperse la cabeza tratando de descubrir cómo usarlo. Si tiene problemas para escribir una expresión regular, puede obtener una explicación de lo que hace su expresión regular enRegExr. No se deje sesgar en contra de los programas GUI que fueron creados para casos de uso como este.

pyRenamer está disponible en los repositorios predeterminados de Ubuntu en Ubuntu 16.04 y versiones anteriores. En Ubuntu 18.04 y posteriores, pyRenamer ha sido reemplazado porGPRenombrar.

información relacionada