2014-04-28 36 views
1

我正在設法做的是從特定位置複製文件。問題是xcopy告訴我,我有無效的參數。由於我之前從未做過批處理程序,所以我想問問是否有可能做到這一點?批xcopy無效參數

set _pfadTarget = path\test 


set _pfadSourceDesk = c:\Users\xxxx\Desktop 
set _pfadSourceDocu = c:\Users\xxxx\Documents 


set _propertyDOC = \*.doc 


REM -------ALL DOC Files-------- 
set _FullSourcePath = %_pfadSourceDesk%%_propertyDOC% 
set _FullDestPath = %_pfadTarget%%_propertyDOC% 
xcopy %_FullSourcePath% %_FullDestPath% /s /y 
set _FullSourcePath = %_pfadSourceDocu%%_propertyDOC% 
xcopy %_FullSourcePath% %_FullDestPath% /s /y 

exit 

回答

1

等號周圍的空格可以解決這個問題,它看起來像所有的變量都會受到影響。

set _FullSourcePath = %_pfadSourceDesk%%_propertyDOC% 

此方法修復變量名稱,並且周圍的雙引號允許變量內容中的長文件和路徑元素(如空格)。

使用這種方式時,頂部行中的下列引號實際上未包含在變量中,因此引號在Xcopy命令中再次用於保護內容。

set "_FullSourcePath=%_pfadSourceDesk%%_propertyDOC%" 
xcopy "%_pfadSourceDesk%%_propertyDOC%" "d:\my backup\2014 04 28\" /s/h/e/k/f/c 
+0

很好用,謝謝:) – Crusader633