Intenté especificar un /EXCLUDEnombre de archivo con espacios xcopy, pero siempre se ahoga. ¿Cómo puedo especificar una ruta de este tipo xcopysin copiar los /EXCLUDEarchivos en el directorio actual y sin usar el antiguo ~1truco de nombre corto de DOS ?
c:\Users\binki\Documents\repos\xcopy_exclude_spacey>dir source
Volume in drive C is OS
Volume Serial Number is 7C4E-86D4
Directory of c:\Users\binki\Documents\repos\xcopy_exclude_spacey\source
2013-01-03 16:39 <DIR> .
2013-01-03 16:39 <DIR> ..
2013-01-03 16:39 0 a
2013-01-03 16:39 0 a b c
2013-01-03 16:39 0 b
2013-01-03 16:39 0 c
4 File(s) 0 bytes
2 Dir(s) 117,279,027,200 bytes free
c:\Users\binki\Documents\repos\xcopy_exclude_spacey>type "various exclude rules\a"
a
c:\Users\binki\Documents\repos\xcopy_exclude_spacey>xcopy /E /EXCLUDE:"various exclude rules\a" source dest
Can't read file: "various exclude rules\a"
0 File(s) copied
c:\Users\binki\Documents\repos\xcopy_exclude_spacey>xcopy /E "/EXCLUDE:various exclude rules\a" source dest
Invalid number of parameters
Ninguna de las formas de citar el nombre de archivo que funcionaría bien en un shell decente me funciona con xcopy. Por alguna razón, la "/EXCLUDE:<filename>"sintaxis impide que se reconozca la opción en sí. La otra sintaxis, "/EXCLUDE:"<filename>"hace Can't read file: "<filename>"que se imprima el mensaje , mostrando que la opción se está analizando correctamente: las comillas dobles evitan que el argumento se divida en varias partes. Sin embargo, este mensaje sugiere que xcopy no elimina correctamente las comillas dobles del nombre de archivo antes de intentar abrir el archivo.
Parece, a partir de esto, que si el primer componente de la ruta que especifico /EXCLUDEcomenzó con ay "mi /EXCLUDEnombre de archivo termina ", podría hacer referencia a ese archivo desde la /EXCLUDEopción de xcopy con éxito. Pero Windows se niega a dejarme colocar el "carácter en mi nombre de archivo.
Entonces, ¿cómo uso xcopy en un mundo moderno con nombres de archivos espaciales?

robocopyprobablemente funcione en esta situación y esté disponible siempre y cuando se dirija a un Windows moderno.