Quiero cambiar el nombre de todos los archivos en una carpeta y agregar una extensión .xml
. Estoy usando Unix. ¿Cómo puedo hacer eso?Cómo agregar la extensión .xml a todos los archivos en una carpeta en Unix/Linux
Respuesta
en la cáscara, se puede hacer esto:
for file in *; do
if [ -f ${file} ]; then
mv ${file} ${file}.xml
fi
done
Editar
Para hacer esto de forma recursiva en todos los subdirectorios, se debe utilizar find
:
for file in $(find -type f); do
mv ${file} ${file}.xml
done
Por otro De la mano, si va a hacer algo más complejo que esto, probablemente no debería usar scripts de shell
.
Mejor aún
Utilice el comentario proporcionado por Jonathan Leffler a continuación:
find . -type f -exec mv {} {}.xml ';'
cómo lo hago recursivamente en todos los subdirectorios también – aWebDeveloper
Use 'find' para encontrar los archivos; 'encontrar. -type f -exec mv {} {} .xml ';' '. –
Actualizó la respuesta. –
En Python:
Uso os.listdir
para conocer los nombres de todos los archivos en un directorio. Si necesita recursivamente busque también todos los archivos en los subdirectorios, use os.walk
. Su API es más compleja que os.listdir
, pero proporciona formas potentes para recorrer directorios de forma recursiva.
Luego use os.rename
para cambiar el nombre de los archivos.
un ejemplo de código o ejemplo o enlace. No sé Python – aWebDeveloper
@Web Desarrollador: ¿acabas de darme -1 por darte una respuesta? ¿Seriamente? –
no hice clic en él por error inmediatamente lo deshice – aWebDeveloper
No sé si esto es normal, pero mi Perl
paquete (Debian/Ubuntu) incluye una /usr/bin/prename
(y un enlace simbólico solo rename
) que no tiene otro propósito:
rename 's/$/.xml/' *
¿Cómo lo hago recursivamente en todos los subdirectorios pero no en archivos .xml? es decir, archivos que no se han cambiado el nombre – aWebDeveloper
con '$ (find -type f)' en vez de '*'. Y adaptando la expresión regular con una aserción 's/(? mario
Puede usar el cambio de nombre con la bandera -n para probar cómo sería el cambio de nombre sin cambiar el nombre de los archivos. –
find . -type f \! -name '*.xml' -print0 | xargs -0 rename 's/$/.xml/'
- 1. agregar recursivamente la extensión de archivo a todos los archivos
- 2. Buscar todos los archivos en una carpeta
- 3. mover todos los archivos en una carpeta a otra?
- 4. ¿Cómo recorro todos los archivos en una carpeta usando C?
- 5. Uso de PowerShell para agregar una extensión a los archivos
- 6. ¿Cómo encontrar todos los archivos con cierta extensión en Android?
- 7. Eclipse: Agregar todos los archivos jar de una carpeta en Java classpath
- 8. Sangría en VIM con todos los archivos en la carpeta
- 9. ¿Agregar todos los archivos en una carpeta que no se haya agregado en subversión?
- 10. Cómo agregar todos los archivos jar externos a la biblioteca en eclipse exportar a war
- 11. CMake - ¿Agregar automáticamente todos los archivos de una carpeta a un destino?
- 12. C#: Obtener todos los archivos de imagen en la carpeta
- 13. macro - abrir todos los archivos en una carpeta
- 14. Cómo eliminar todos los archivos y carpetas en una carpeta mediante una llamada a cmd
- 15. Eliminar carpeta y todos los archivos/subdirectorios
- 16. Haga una búsqueda y reemplazo en todos los archivos en una carpeta a través de python?
- 17. ¿Cómo obtener la lista de archivos con una extensión específica en una carpeta determinada?
- 18. cómo leer todos los archivos dentro de la carpeta en particular
- 19. ¿Agregar una carpeta al instalador en wix no archivos?
- 20. ¿Cómo se puede ignorar todos los archivos/carpetas en una carpeta, pero no la carpeta en sí?
- 21. Git: cómo obtener todos los archivos modificados y nuevos en una carpeta o zip?
- 22. Agregar todos los archivos no rastreados a la vez
- 23. Mueva todos los archivos de una carpeta a otra carpeta con java
- 24. ¿Cómo puedo mover todos los archivos de una carpeta a otra usando la línea de comando?
- 25. ¿Encontrar todos los archivos con cierta extensión en Unix?
- 26. cómo eliminar todos los archivos excepto los últimos tres en una carpeta
- 27. Android, ¿cómo puedo obtener una lista de todos los archivos en una carpeta?
- 28. gitignore todos los archivos de extensión en el directorio
- 29. Fuerza Borrar todos los archivos de una carpeta
- 30. mover todos los archivos y carpetas en una carpeta a otra?
Estas etiquetas crean confusión. ¿Quieres hacer esto en PHP, Python o Shell Unix? – rds
renombrar 's/$/\. Xml /' * referencia: http://askubuntu.com/a/74368 – Neil