Eu tenho um script de linha única que copia todos os arquivos ".ext1" da pasta atual para a pasta de destino de forma recursiva:
xcopy *.ext1 D:\dest /s /d /y
Funciona perfeitamente.
Agora eu quero copiar todos os * .ext2 também. Em vez de copiar e colar (funciona bem):
xcopy *.ext1 D:\dest /s /d /y
xcopy *.ext2 D:\dest /s /d /y
Eu quero usar um for
comando:
for %%f in (*.ext1 *.ext2) do xcopy %%f D:\dest /s /d /y
mas não funciona:
- Não copia subdiretórios da pasta de origem
- Não copia arquivos com nomes com espaços como "read me.ext1"
Eu tentei usar um /R
chave:
for /R %%f in (*.ext1 *.ext2) do xcopy %%f D:\dest /s /d /y
mas isso resultou em copiar os arquivos de origem do subdiretório na pasta raiz de dest. E nomes com espaços não foram.
Qual é a forma correta do for
comando seria?
...xcopy "%%f%" ...