題 批處理文件複製文件夾出錯:'參數數量無效'


我在Windows XP中製作批處理文件,將我需要的文件夾複製到PC上的另一個文件夾中。我收到了一個錯誤。

我收到錯誤“參數數量無效”。

xcopy /s/z D:\Documents and Settings\%username%\Desktop C:\SomeRandomFolder\
xcopy /s/z D:\Documents and Settings\%username%\Favorites C:\SomeRandomFolder\
xcopy /s/z D:\Documents and Settings\%username%\Start Menu C:\SomeRandomFolder\
xcopy /s/z D:\Documents and Settings\%username%\My Documents C:\SomeRandomFolder\
xcopy /s/z D:\Documents and Settings\%username%\PrintHood C:\SomeRandomFolder\
xcopy /s/z D:\Documents and Settings\%username%\NetHood C:\SomeRandomFolder\
xcopy /s/z D:\Documents and Settings\%username%\Templates C:\SomeRandomFolder\
xcopy /s/z D:\Documents and Settings\%username%\Searches C:\SomeRandomFolder\
xcopy /s/z D:\Documents and Settings\%username%\Local Settings\Application Data\Microsoft\Outlook C:\SomeRandomFolder\
pause

然後我更改了批處理並收到此錯誤:“找不到文件 - 桌面”

xcopy /s/z D:\...\%username%\Desktop C:\SomeRandomFolder\
pause

我該如何解決這些錯誤?


6
2017-12-12 16:22


起源




答案:


您至少需要在文件名或目錄中包含空格的引號,但最好是引用整個參數以避免Marcks Thomas在評論​​中提出的其他問題:

xcopy /s/z "D:\Documents and Settings\%username%\Favorites" "C:\SomeRandomFolder\"

或者在這種特殊情況下,如Phillip R.評論的那樣,從用戶主目錄複製,以處理所有Windows版本(包括其他語言),您可以使用:

xcopy /s/z "%userprofile%\<somefolder>" "C:\SomeRandomFolder\"

8
2017-12-12 16:41



我建議用引號括起整個路徑,以避免%username%中的潛在空格被解析為分隔符。 - Marcks Thomas
勞倫特 - 那很有效。謝謝。 - Daniel
可以使用“%userprofile%\ <somefolder>”而不是此部分。 D:\ Documents and Settings \%username%,這適用於所有當前版本的Windows。 - Phillip R.
@Phillip R.感謝您的建議,答案改進包括它。 - laurent


您需要在目錄路徑周圍加上引號。

xcopy /s/z "D:\Documents and Settings\%username%\Desktop" "C:\SomeRandomFolder\"

它給你一個錯誤,因為你的目錄路徑中有一個空間,所以當它沒有時它將它看作一個新目錄而它找不到它。


4
2017-12-12 16:51