¿Cómo puedo cambiar el nombre de muchos archivos a la vez?


43

Necesito cambiar el nombre de un grupo de archivos para corregir su orden de clasificación, por lo tanto, necesito poder hacer una especie de "buscar y reemplazar" para poder reemplazar fragmentos de los nombres de archivo a la vez.

¿Qué herramientas debo usar? Prefiero GUI pero una recomendación de herramienta de línea de comando también estaría bien.

Respuestas:


54

Hay algunos, pero recomiendo gprename, Instalar gprename que es un buen compromiso entre usabilidad y funcionalidad.

Otras herramientas son: rename, krename Instalar krename , pyrenamer Instalar pyrenamer , cuteRenamer, ...


66
pyRenamer no es malo en absoluto.
skalka

66
He usado Pyrenamer con frecuencia y, a veces, gprename a menos que el cambio se realice muy fácilmente en la línea de comandos. Lo mejor de estas GUI es la acción de 'vista previa' incorporada. Esto te ahorrará dolores de cabeza.
belacqua

44
+1 para gprename, solo intenté y realicé el cambio de nombre necesario en 5 segundos
Pisu

La vergüenza ni gprename o pyrename pueden tomar lista de archivos para cambiar el nombre de la línea de comandos
artfulrobot

gprename es genial en 14.04. Hice 300 carpetas renombrando por regex en 15 segundos
3rgo

10

Realmente me gusta qmv del renameutilspaquete. Le permite usar su editor de texto favorito (basado en terminal) para cambiar el nombre de los archivos. Prefiero invocarlo con lo -f doque le da una sola columna (una fila por archivo) con nombres de archivo. Combinado con el poder de Vim, le brinda todas las herramientas que necesita para realizar una edición masiva de nombres de archivo.

http://www.nongnu.org/renameutils/



5

Si te gustan las expresiones regulares de shell y perl, te las recomiendo rename. Es tan simple como su nombre.



3

Si está familiarizado con Emacs, creo que nada supera a Dired para esta tarea. Incluso si no usa Emacs, a menudo puede encontrar Dired una herramienta útil.

sudo aptitude install emacs23-nox

Inicie el modo Emacs Dired para un directorio:

emacs -nw path/to/dir/

Ahora ingrese al modo de edición de directorio:

C-x C-q (es decir, Ctrl + x seguido de Ctrl + q)

Ahora puede editar los nombres de archivo como editar texto en cada editor de texto plano. Incluso puede optar por reemplazar los nombres de archivo con expresiones regulares (tenga en cuenta que, lamentablemente, Emacs utiliza una sintaxis diferente a PCRE).

Por ejemplo, para cambiar el nombre de los archivos con contador (comenzando por 1):
M-x replace-regexp(es decir Alt + x seguido de la cadena "replace-regexp" escrita en el minibúfer en la parte inferior de la pantalla).
Reemplazar regexp: DSCN\([0-9]+\).JPG
Reemplazar con: \,(format "P%04d.jpg" (1 + \#))

Para reutilizar un contador en el nombre del archivo:
M-x replace-regexp
Reemplace regexp: DSCN\([0-9]+\).JPG
Reemplace con:\,(format "P%04d.jpg" (string-to-number \1))

Cuando termine, escriba:

C-c C-c (es decir, Ctrl + c seguido de Ctrl + c)

O, alternativamente, presione la siguiente secuencia para cancelar sus cambios:

C-c Esc (es decir, Ctrl + c seguido de Esc)


2

Tiendo a usar mmv , que se basa en la línea de comandos y tiene una sintaxis de expresión algo peculiar, pero tiendo a resolver la mayoría de mis problemas.



0

En la línea de comando también existe la posibilidad de usar magia de sed y shell:

ls *.c | sed "s#\(.*\)\.c#mv \0 \1.cpp#" | sh

1
Eso no parece funcionar como está impreso. También puede usar '#' u otro carácter en lugar de "\" como separadores en los ejemplos para posiblemente mayor claridad. por ejemplo, `ls .c | sed 's # ([az] ) \. c # \ 1.cpp #' '(Este ejemplo no es cambiar el nombre, solo para mostrar el nuevo nombre de archivo, por simplicidad)
belacqua

+1 Me parece una forma realmente agradable (que además funciona en todas las distribuciones), sin instalar nada. Pero probablemente usaría el -dinterruptor para lsevitar enumerar el contenido de directorios que también podrían terminar con .c(la mayoría de las veces no es un problema, pero aún así ...).
Levite

0

Windows tiene un programa realmente bueno para esto llamado Bulk Rename Utility. Aquí está la URL: http://www.bulkrenameutility.co.uk/Main_Intro.php .

Hay una versión unicode de Windows 98 que es portátil. Lo puse en una carpeta en mi sistema Linux (Mint Maya) y cuando lo ejecuto a través de Wine funciona de maravilla. La interfaz gráfica de usuario es muy fácil de usar y muy flexible.


Casi quiero correr esto en vino. Es mucho mejor que pyRenamer.
Teque5

0

Para mí, el pyRenamer funcionó mejor. Nada (lamentablemente) se acerca a Total Commanders, la herramienta de cambio de nombre creada. pyRenamer no se integra con Krusader, pero teniendo en cuenta el hecho de que no utiliza las herramientas de cambio de nombre que a menudo de todos modos, pyRenamer es una muy buena opción.


0

Esta es la herramienta que uso: rnm ( página man ) ( más ejemplos )

Algunos Uso:

rnm file-name -ns new-filename             # single file
rnm ./* -ns '/n//i/'                       # files will be sorted and indexed.
rnm ./* -rs '/search/new/g'                # 'search' in filenames will be replaced with 'new'
rnm ./* -ns '/fn//i/' -ss 'search'         # only files/directories which contain 'search' in their name will be indexed (renamed).
rnm ./* -ns '/fn//id/' -fo                 # file only mode, directories will be ignored.
rnm ./* -ns '/fn//id/' -fo -dp -1          # recursive to subdirectories all the way.

etc...

El enlace de la página web va a neurobin.org/projects/softwares/unix/rnm y da un 404.
muru

@muru: hmm, algo le sucedió a la página, la actualicé al enlace de la página man.
Jahid

0

Personalmente uso Ant Renamer con Wine porque nada de lo que he probado (Métamorphose, PyRenamer, GPRename, KRename) es tan potente, fácil de instalar y fácil de usar. Y todavía es FOSS, así que no veo el problema.


0

Krename es una GUI de KDE para renombrar archivos, que generalmente se encuentra en la mayoría de los administradores de paquetes.

Esta respuesta se aplica a la eliminación de números iniciales que se pueden encontrar en archivos de música como mp3. Pero también Krenamecambia el nombre en masa.

  1. Cargue los archivos o carpetas seleccionados. Krename carga todos los archivos en la carpeta seleccionada, simplemente haga clic en Opensin tener que seleccionar individualmente todos los archivos.

  2. Vaya a la Destinationpestaña para sobrescribir o copiar archivos a otra carpeta.

  3. Vaya a la Filenamepestaña, luego a la Advanced Filenamepestaña.

     Imagen "Nombre de archivo avanzado" que muestra la configuración predeterminada.

  4. Comience por eliminar el token $en la Templateventana. Un cambio tiene lugar en la Renamedventana de abajo. No aparecen nombres de archivo, solo las extensiones de archivo.

    3. La imagen muestra que los nombres de archivo se han eliminado, dejando las extensiones de archivo.

  5. Haga clic en Insert Part of Filename...y seleccione las partes del nombre de archivo que desea conservar. Esta operación incluirá todos los archivos y los cambios serán obvios en la Renamedventana a continuación.

    4. Imagen "Insertar parte del nombre de archivo ..." que muestra cómo seleccionar el nombre de archivo resaltando las secciones preferidas.

  6. Haga clic OK. Los archivos se renombran sin los números iniciales.

    5. Resultados finales que muestran.

  7. Finalmente, haga clic Finisheden la esquina inferior derecha.


0

Una nueva utilidad de cambio de nombre de la GUI que se ejecuta en Linux (también funciona en Mac y Windows) es Inviska Rename .

ingrese la descripción de la imagen aquí

Además de las funciones habituales de cambio de nombre, como reemplazar una parte del texto con otro texto, insertar o eliminar texto, cambiar el nombre de las extensiones de archivo, etc., esta herramienta puede cambiar el nombre de las carpetas, cambiar el nombre de la música según las etiquetas y cambiar el nombre de las fotos con su información Exif. Incluso puede cambiar el nombre del lote utilizando atributos de archivo como la fecha de creación o modificación.

Otras características incluyen la vista previa de los nuevos nombres de archivo y deshacer el cambio de nombre del lote, lo que me parece muy útil.

Fuente

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.