Xcopy - Número inválido de parâmetros

Xcopy - Número inválido de parâmetros

Estou tentando criar um arquivo bat que irá realocar alguns arquivos ECF de uma pasta para uma nova pasta

Configurei com sucesso um arquivo bat XCopy para outros documentos (.doc, .ppt) etc. e copiei o texto do arquivo bat XCopy em funcionamento e alterei *.doc para *.ecf

@ECHO OFF

cd C:\Users\Alex.Newton\Documents\Fixes\ProgramName\Binaries
REM This is will copy over .doc documents
FOR %%f IN (*.ecf) DO XCOPY "C:\Users\Alex.Newton\Documents\Fixes\ProgramName\Binaries" "%%f" "C:\Users\Alex.Newton\Documents\Fixes\ProgramName\"
PAUSE

Um número inválido de parâmetros acontece 9 vezes e é quantos arquivos ECF existem, então parece que os está detectando, mas não os copia?

Responder1

Número inválido de parâmetros

Você tem:

cd C:\Users\Alex.Newton\Documents\Fixes\ProgramName\Binaries
FOR %%f IN (*.ecf) DO XCOPY "C:\Users\Alex.Newton\Documents\Fixes\ProgramName\Binaries" "%%f" "C:\Users\Alex.Newton\Documents\Fixes\ProgramName\"

O comando acima xcopytem três argumentos:

"C:\Users\Alex.Newton\Documents\Fixes\ProgramName\Binaries"
"%%f" 
"C:\Users\Alex.Newton\Documents\Fixes\ProgramName\"

A sintaxe para xcopyé:

XCOPY source [destination] [options]

Seu terceiro argumento énãouma opção (verxcopiar).


Maneira correta de chamar o xopy

Como você já está no diretório correto, C:\Users\Alex.Newton\Documents\Fixes\ProgramName\Binariesnão precisa do primeiro argumento.

FOR %%f IN (*.ecf) DO XCOPY "%%f" "C:\Users\Alex.Newton\Documents\Fixes\ProgramName\"

Ou:

FOR %%f IN (*.ecf) DO XCOPY "C:\Users\Alex.Newton\Documents\Fixes\ProgramName\Binaries\%%f" "C:\Users\Alex.Newton\Documents\Fixes\ProgramName\"

Leitura adicional

informação relacionada