Como posso especificar um arquivo / EXCLUDE com espaços para o xcopy?

2

Eu tentei especificar um /EXCLUDE nome do arquivo com espaços nele para xcopy , mas ele sempre engasga. Como posso especificar esse caminho para xcopy sem copiar os arquivos /EXCLUDE para o diretório atual e sem usar o velho hack% shortname do DOS ~1 ?

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

Nenhuma das maneiras de citar o nome do arquivo que funcionaria bem em um shell decente funciona para mim com o xcopy. Por algum motivo, a sintaxe "/EXCLUDE:<filename>" impede que a própria opção seja reconhecida. A outra sintaxe, "/EXCLUDE:"<filename>" , faz com que a mensagem Can't read file: "<filename>" seja impressa, mostrando que a opção está sendo analisada corretamente: as aspas duplas impedem que o argumento seja dividido em várias partes. No entanto, esta mensagem sugere que as aspas duplas não estão sendo apropriadamente removidas do nome do arquivo pelo xcopy antes de tentar abrir o arquivo.

Parece que, se o primeiro componente do caminho especificado em /EXCLUDE iniciado com " e my /EXCLUDE nome do arquivo terminar em " , eu seria capaz de referenciar esse arquivo de A opção /EXCLUDE do xcopy foi bem-sucedida. Mas o Windows se recusa a me deixar colocar o caractere " no meu nome de arquivo.

Então, como eu uso o xcopy em um mundo moderno com nomes de arquivos espaciais?

    
por binki 03.01.2013 / 23:13

0 respostas