xcopy가“잘못된 매개 변수 수”를 반환하는 이유는 무엇입니까?


10

어떤 상황에서 xcopy는 Invalid number of parameters무슨 일이 일어나고 있는지에 대한 힌트를주지 않고 오류 를 반환합니다 . 이것에 대한 일반적인 해결책은 파일 이름이 따옴표로 묶여 있는지 확인하는 것입니다. 이는 파일이 비슷 xcopy %1 %2하고 실제로 필요한 배치 파일에 문제가 될 수 있기 때문 xcopy "%1" "%2"입니다. 그러나 최근에 문제가 공백이 아닌 문제가 발생했습니다.

C:\Temp\foo>c:/windows/system32/xcopy.exe /f /r /i /d /y * ..\bar\
Invalid number of parameters

답변:


14

이것에 대한 해결책은 까다 롭습니다 .xcopy가 자체 바이너리의 경로에서 슬래시를 구문 분석하는 것으로 나타났습니다. 이것은 잘 작동합니다 :

C:\Temp\foo>c:\windows\system32\xcopy.exe /f /r /i /d /y * ..\bar\
C:\Temp\foo\blah -> C:\Temp\bar\blah
1 File(s) copied

PATH백 슬래시 대신 슬래시를 사용 하여 정의한 경우이 문제를 해결할 수도 있습니다 .


또한 이것을로 사용하는 경우 Post-build event경로에 $(TargetDir)공백이있을 수 있으므로 의 전체 경로를 따옴표로 묶어야 합니다.xcopy "$(TargetDir)*.dll" ..\..\Project.Web\bin
Highmastdon

1
소스 또는 대상 경로에 슬래시가있는 경우에도 발생할 수 있습니다. xcopy에 전달하는 모든 경로에서 모든 슬래시를 백 슬래시로 바꾸십시오!
Juraj Petrik 2016

0

내 발견은 옵션에 이중 슬래시가 필요하다는 것입니다.

c:\windows\system32\xcopy.exe //f //r //i //d //y * "..\bar\"
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.