Foros del Web » Programación para mayores de 30 ;) » Programación General »

[SOLUCIONADO] Ciclo en batch

Estas en el tema de Ciclo en batch en el foro de Programación General en Foros del Web. Buenas tardes, necesito saber como puedo hacer un batch que copie todas las imagenes de un directorio, incluyendo las que se encuentran en subdirectorios a ...
  #1 (permalink)  
Antiguo 04/05/2014, 10:11
Avatar de ytapanes  
Fecha de Ingreso: junio-2012
Mensajes: 22
Antigüedad: 12 años, 5 meses
Puntos: 0
Ciclo en batch

Buenas tardes, necesito saber como puedo hacer un batch que copie todas las imagenes de un directorio, incluyendo las que se encuentran en subdirectorios a otra localización. Se que tal vez es algo trivial pero no tengo experiencia en el tema y no he encontrado solución y realmente lo necesito. Saludos y gracias de antemano
  #2 (permalink)  
Antiguo 04/05/2014, 10:48
Avatar de nup_  
Fecha de Ingreso: noviembre-2010
Mensajes: 265
Antigüedad: 14 años
Puntos: 32
Respuesta: Ciclo en batch

Hola:
Prueba con
Código BASH:
Ver original
  1. cd directorio_origen
  2. find . -name "*.*" -exec cp -v {} directorio_destino \;
Eso es asumiendo q todas los ficheros q hay en el directorio_origen son imágenes, de no ser así tienes q especificar en el comando find q imágenes vas a copiar:
Código BASH:
Ver original
  1. cd directorio_origen
  2. find . -name "*.jpg" -exec cp -v {} directorio_destino \;

Esto va a copiar todas las imágenes a directorio_destino pero no reproduce la estructura de carpetas y subcarpetas así q tienes q tener cuidado con los nombres de las imágenes para q no se sobreescrban.


slds;

nup_
  #3 (permalink)  
Antiguo 04/05/2014, 10:58
Avatar de ytapanes  
Fecha de Ingreso: junio-2012
Mensajes: 22
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Ciclo en batch

Me dice que el comando find no lo reconoce.
También probe con:
for /R "D:\Films\0. Nuevos Filmes" %%v in (*.jpg, *.bmp, *.png) do (
COPY %%v D:\x
pause
)
pero me dice que "The system cannot find the file specified" cuando ejecuta el COPY

Alguna idea??

Muchas gracias por tu respuesta
  #4 (permalink)  
Antiguo 04/05/2014, 11:14
Avatar de nup_  
Fecha de Ingreso: noviembre-2010
Mensajes: 265
Antigüedad: 14 años
Puntos: 32
Respuesta: Ciclo en batch

Uppss, sorry.... my bad.

el script q te dí es para bash no para batch. Eso me pasa por no leer bien las preguntas.

Por otra parte podrías desinstalar Windows, instalar Linux y ya sabrías como resolver el problema
:D

slds;

nup_
  #5 (permalink)  
Antiguo 04/05/2014, 12:22
Avatar de ytapanes  
Fecha de Ingreso: junio-2012
Mensajes: 22
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Ciclo en batch

Muchas gracias de todos modos hermano
  #6 (permalink)  
Antiguo 04/05/2014, 13:18
Avatar de ytapanes  
Fecha de Ingreso: junio-2012
Mensajes: 22
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Ciclo en batch

Resuelto, solo me faltaba poner la ruta entre comillas.
for /R "D:\ruta" %%v in (*.jpg, *.bmp, *.png) do (
copy "%%v" d:\x
)

Etiquetas: batch
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 05:09.