Foros del Web » Programando para Internet » Python »

copiar y renombrar archivos

Estas en el tema de copiar y renombrar archivos en el foro de Python en Foros del Web. Hola tengo un archivo llamado "sample" y una carpeta "files" con donde X archivos. Necesito copiar "sample" X veces en la carpeta y renombrar cada ...
  #1 (permalink)  
Antiguo 11/02/2013, 12:58
 
Fecha de Ingreso: enero-2010
Mensajes: 152
Antigüedad: 14 años, 2 meses
Puntos: 0
copiar y renombrar archivos

Hola
tengo un archivo llamado "sample" y una carpeta "files" con donde X archivos. Necesito copiar "sample" X veces en la carpeta y renombrar cada copia segun el nombre de cada archivo dentro de la carpeta.
existe alguna forma facil de hacer esto con un script de phython? ya que por ahora lo estoy haciendo manualmente.

Gracias
  #2 (permalink)  
Antiguo 11/02/2013, 13:07
 
Fecha de Ingreso: enero-2012
Ubicación: Buenos Aires
Mensajes: 745
Antigüedad: 12 años, 3 meses
Puntos: 35
Respuesta: copiar y renombrar archivos

No entendí muy bien la parte de renombrar, pero para hacer todo lo que comentas creo que alcanza con las siguientes funciones:

os.listdir para listar archivos en un directorio.
shutil.copy o shutil.copy2.
os.rename para renombrar cualquier archivo.

Espero que te sirva!
  #3 (permalink)  
Antiguo 11/02/2013, 14:44
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: copiar y renombrar archivos

Si tienes linux y eres bueno con expresiones regulares puedes usar rename.
  #4 (permalink)  
Antiguo 12/02/2013, 07:32
 
Fecha de Ingreso: enero-2010
Mensajes: 152
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: copiar y renombrar archivos

lo que necesito es que el renombre se haga automaticamente, es decir, si tengo en la carpeta archivos llamados 1 2 y 3 que el archivo a copiar se copie 3 veces y con distinto nombre cada vez

me sirve el rename para ese caso?
seria mucho mejor en linux ya que me manejo mejor que con python
  #5 (permalink)  
Antiguo 12/02/2013, 08:29
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: copiar y renombrar archivos

Cita:
Iniciado por razpeitia Ver Mensaje
Si tienes linux y eres bueno con expresiones regulares puedes usar rename.
Cuidado que ese rename no es el mismo que viene de forma predeterminada en los sistemas linux, que es un programa mucho más simple que solamente puede hacer reemplazo de cadenas.

Cita:
Iniciado por d4n13l4 Ver Mensaje
lo que necesito es que el renombre se haga automaticamente, es decir, si tengo en la carpeta archivos llamados 1 2 y 3 que el archivo a copiar se copie 3 veces y con distinto nombre cada vez
Yo no termino de entender el problema. ¿podrías crear un ejemplo, un listado de la carpeta como está y cómo debería quedar?

Por lo que entiendo, creo que sería algo como esto (en shell por comodidad):

Código BASH:
Ver original
  1. for i in dir_destino/*; do
  2.     NOMBRE=(algun comando que te de un nombre aleatorio)
  3.     cp sample dir_destino/$NOMBRE
  4. done

Etiquetas: renombrar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:52.