Tengo una carpeta en mi escritorio Test
y en esta carpeta tengo dos carpetas WorkingFolder\Bilder
y Station 1
. Entonces la estructura se ve así:
Test\WorkingFolder\Bilder Test\Station 1
Dentro Test\
(de la carpeta principal) tengo el archivo por lotes. Necesito poder mover o copiar los .jpg
archivos Test\Station 1
desde Test\WorkingFolder\Bilder
. Para esto he estado usando XCopy
.
El problema es que NO PUEDO usar el nombre de la carpeta de copia en XCOPY
, porque el archivo por lotes se usará en varias carpetas estructuradas de manera similar, pero con diferentes nombres de ruta. Entonces he estado intentando usar %~dp0
en su lugar:
Mi código es:
md WorkingFolder\Bilder
xcopy /s "%~dp0\*.jpg" WorkingFolder\Bilder\
Lo que intento escribir es copiar todo .jpg
dentro de las subcarpetas de %~dp0
, %~dp0
siendo la carpeta donde está el archivo por lotes y su subcarpeta donde se encuentran las imágenes Station 1
, y ponerlas en WorkingFolder\Bilder
.
El problema es que no se copian archivos. Solo cuando hago referencia DIRECTAMENTE a Station 1
, Xcopy
los archivos se copian. Necesito poder hacer referencia a todos los subdirectorios %~dp0
y no a los subdirectorios como %~dp0\example
.
¡Por favor, ayúdame!
Respuesta1
Creo quexcopy
informa el siguiente error:
Cannot perform a cyclic copy
Esto sucede porque el directorio de destino está ubicado en el árbol del directorio de origen.
Podrías intentar utilizar elrobocopy
dominioen su lugar y excluya el directorio de destino:
robocopy "%~dp0." "%~dp0WorkingFolder\Builder" "*.jpg" /S /XD "%~dp0WorkingFolder"