Archivo bat para copiar archivos sin sus subcarpetas de origen

Necesito copiar todos los archivos txt que se encuentran en j:\ que contiene subcarpetas para pasarlo a una carpeta en j:\ITM\archivostxt\

Tengo estas líneas

@echo off

>>j:\ITM\archivosjava\prueba.txt robocopy j:\ *.txt j:\ITM\archivostxt\ /s
Pause

1 respuesta

Respuesta
2

¿Cuál es la pregunta? No veo ningún problema en el código propuesto, como no sea que debe existir previamente el archivo prueba.txt

Que necesito solo que me copie los archivos txt y no las carpetas y subcarpetas en las que se encontraban.

Que me exporte todos los archivos txt que se encuentren en las subcarpetas pero no sus carpetas de origen.

E buscado en internet y no he encontrado solución, parece que es muy compleja su solución

No conozco bien el ROBOCOPY pero prueba con esto:

@echo off
if not exist j:\ITM\archivostxt md f:\ITM\archivostxt
for /f "tokens=1* delims=" %%a in ('dir /b /s j:*.txt') do >>j:\ITM\archivosjava\prueba.txt copy "%%a" j:\ITM\archivostxt\%%~nxa

Perdón, se me escapó una "f" de mi unidad de pruebas. Además voy a retocar la sintaxis del FOR. Quedaría así:

@echo off
if not exist j:\ITM\archivostxt md j:\ITM\archivostxt
for /f "tokens=*" %%a in ('dir /b /s j:*.txt') do >>j:\ITM\archivosjava\prueba.txt copy "%%a" j:\ITM\archivostxt\%%~nxa

¡Gracias! 

Muchas gracias.

Hola disculpa,

E descubierto que no me copia los archivos que tengas en su nombre espacios.

¿Cuál seria su solución?

Gracias.

He hecho pruebas y no se me da ese problema. Cópiame el bat que usas (por si hubiera algún error) y si puedes el error que te da el copy cuando intentas copiar el archivo.

Buenos días, muchas gracias por atender mis dudas.

Sin duda es un experto.

Encontré la solución y era "J:\archivostxt\%%~nxa" poner la dirección final entre comillas

@echo off
if not exist J:\archivostxt md J:\archivostxt
for /f "tokens=*" %%a in ('dir /b /s J:*.txt') do copy "%%a" "J:\archivostxt\%%~nxa"
pause
exit

Muchas gracias por ver mi mensaje

Perfecto. Esa era mi sospecha pero no estaba muy seguro porque efectivamente no había incluido esas comillas en mi respuesta pero sí que las había usado en mis pruebas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas