標籤:
DOS批處理命令,永遠是不朽的命令,不僅功能強大,同時,速度也是最快的!但是,很多新手學習電腦,都已經遺忘了本不該忘記的批處理命令
XCOPY是COPY的擴充,可以把指定的目錄連檔案和目錄結構一併拷貝,但不能拷貝系統檔案;使用時來源硬碟符、源目標路徑名、源檔案名稱至少指定一個;選用/S時對來源目錄下及其子目錄下的所有檔案進行COPY。除非指定/E參數,否則/S不會拷貝空目錄,若不指定/S參數,則XCOPY只拷貝來源目錄本身的檔案,而不涉及其下的子目錄;選用/V參數時,對的拷貝的扇區都進行較驗,但速度會降低。
我們不可數典忘祖,該學習的還是要學習,不該忘記的還是不能忘記,尤其是DOS批處理命令,在開發軟體或項目的時候,都離不開這些基本的原始的命令。本文,我們來學習Xcopy的參數及執行個體
一、Xcopy參數介紹
命令格式:XCOPY source [destination] 一堆可選的參數
參數介紹
source 指定要複製的檔案。
destination 指定新檔案的位置和/或名稱。
/A 只複製有存檔屬性集的檔案, 但不改變屬性。
/M 只複製有存檔屬性集的檔案, 並關閉存檔屬性。
/D:m-d-y 複製在指定日期或指定日期以後改變的檔案。如果沒有提供日期,只複製那些源時間比目標時間新的檔案。
/EXCLUDE:file1[+file2][+file3]...
指定含有字串的檔案清單。如果有任何字串與要被複製的檔案的絕對路徑相符,那個檔案將不會得到複製。
例如,指定如 \obj\ 或 .obj 的字串會排除目錄 obj 下面的所有檔案或帶有 .obj 副檔名的檔案。
/P 建立每個目標檔案前提示。
/S 複製目錄和子目錄,除了空的。
/E 複製目錄和子目錄,包括空的。 與 /S /E 相同。可以用來修改 /T。
/V 驗證每個新檔案。
/W 提示您在複製前按鍵。
/C 即使有錯誤,也繼續複製。
/I 如果目標不存在,又在複製一個以上的檔案, 則假定目標一定是一個目錄。
/Q 複製時不顯示檔案名稱。
/F 複製時顯示完整的源和目標檔案名。
/L 顯示要複製的檔案。
/G 允許將沒有經過加密的檔案複製到不支援加密的目標。
/H 也複製隱藏和系統檔案。
/R 改寫唯讀檔案。
/T 建立目錄結構,但不複製檔案。不包括空目錄或子目錄。/T /E 包括空目錄和子目錄。
/U 只複製已經存在於目標中的檔案。
/K 複製屬性。一般的 Xcopy 會重設唯讀屬性。
/N 用產生的短名複製。
/O 複製檔案所有權和 ACL 資訊。
/X 複製檔案審核設定(隱含 /O)。
/Y 禁止提示以確認改寫一個現存目標檔案。
/-Y 導致提示以確認改寫一個現存目標檔案。
/Z 用重新啟動模式複製網路檔案。
二、Xcopy命令執行個體介紹
①本機複製檔案或檔案夾的執行個體
代碼如下:
Xcopy d:\UpdateFiles e:\123 /s /e /y
命令解釋:將D盤的UpdateFiles檔案夾中包含的所有東西,全部複製到E盤的123檔案夾內;/s /e /y 參數說明:在複製檔案的同時也複製空目錄或子目錄,如果目標路徑已經有相同檔案了,使用覆蓋方式而不進行提示。
②在區域網路中的應用執行個體
代碼如下:
Xcopy \\192.168.0.168\UpdateFiles e:\123 /s /e /y
命令解釋:將192.168.0.168這台電腦的名稱為UpdateFiles的檔案夾內的所有東西,全部複製到原生e:\123 檔案夾;參數說明:在複製檔案的同時也複製空目錄或子目錄,如果目標路徑已經有相同檔案了,使用覆蓋方式而不進行提示。
③結合/d標籤,實現只複製比目標檔案新的檔案
假如現在c:\a檔案夾下的所有檔案和d:\a下的檔案相同(修改日期及內容)
c:\a下的一個檔案被別人修改了或者添加了一個檔案!
能否寫個bat,判斷一下c:\a檔案夾下的每個檔案的最後修改日期是不是在前兩天內!如果是,則複製到d:\a下的相應目錄(要是原來有,則覆蓋),如果不是,則不複製了.
代碼如下:
@echo off
echo y|xcopy c:\a /d /e /r /k d:\a\
pause
經測試如果目標檔案與源檔案相同則不複製。確實一定程度了減少了對硬碟的讀寫。
Xcopy命令參數使用介紹