在批處理中 XCOPY 覆蓋
Siddharth Bishnoi
2023年1月30日
Batch
Batch Xcopy
Xcopy 是一個命令列實用程式,用於將一個或多個檔案或目錄(包括子目錄)從一個位置複製到另一個位置。它類似於 copy 命令,但更強大,因為它可以將整個目錄從一個位置複製到另一個位置。
它足夠強大,甚至可以複製驅動器。Xcopy 是一個快速命令,它可以複製檔案和資料夾,在有或沒有提示的情況下覆蓋現有檔案,根據名稱、路徑或副檔名排除檔案,識別更新的檔案等。
從 Windows 98 開始,幾乎所有 Windows 版本都支援它。它可以作為 DOS 命令在 MS-DOS 中使用 xcopy。
xcopy 命令的語法是:
xcopy <source> <destination> </parameters>
source- 要複製的檔案的位置和名稱。它必須包括檔案或目錄的驅動器和路徑。destination- 要複製的檔案的目的地。它可以是驅動器、目錄或檔名。parameters-xcopy命令提供的選項。可以通過執行xcopy /?檢視它們在命令提示符視窗中。
還有其他幾個類似於 xcopy 的命令,有些甚至比它更強大,例如 robocopy、rsync、teracopy 等。但是,我們將在本文中堅持使用 xcopy。
本教程將教授如何在使用 xcopy 命令複製檔案時在沒有提示的情況下覆蓋目標中的所有檔案。
批量複製新資料夾中的檔案
要將檔案從一個位置複製到另一個位置,請執行以下命令。
xcopy C:\testfolder D:\testfolder /i /s

/s- 複製要複製的資料夾中的目錄、子目錄和檔案,除非它們為空。/i- 強制xcopy假定目標是一個目錄並建立一個新目錄。如果不使用,系統將提示你輸入目標是檔案還是目錄。
要僅複製目錄樹而不復制檔案,即目錄結構,請執行以下命令。
xcopy C:\testfolder D:\testfolder /t /e

/t- 複製不包括檔案的目錄結構。/e- 複製所有子目錄,即使它們是空的。它與/t和/s選項一起使用。
輸出:

如上所示,只複製目錄而不復制檔案。
通過批量覆蓋現有檔案來複制檔案
要在複製時覆蓋現有檔案,請執行以下命令。
xcopy C:\testfolder D:\testfolder /i /s
.webp)
如上圖所示,它要求覆蓋現有檔案或所有檔案。當我們在現有檔案上覆制許多檔案時,它會為每個具有相同名稱的檔案顯示提示。
確認每個檔案太耗時。為避免這種情況,我們需要使用 /y 選項和上述命令。
批量無提示覆蓋所有檔案複製檔案
執行以下命令複製現有檔案而不提示覆蓋現有檔案。
xcopy C:\testfolder D:\testfolder /i /s /y
.webp)
/y - 避擴音示確認是否覆蓋目的地的現有檔案。
通過網路批量複製檔案
xcopy C:\Videos "\\server\media\videos" /s /i /z /w
/s- 複製要複製的資料夾中的目錄、子目錄和檔案,除非它們為空。/i- 強制xcopy假定目標是一個目錄並建立一個新目錄。如果不使用,系統將提示你輸入目標是檔案還是目錄。/z- 在重新啟動模式下通過網路複製,即,如果在複製過程中連線丟失,則在連線恢復時恢復。它還顯示完成百分比。/w- 顯示以下訊息:按任意鍵開始複製檔案。它等待你的響應以開始複製過程。
因此,我們討論瞭如何在複製許多檔案時覆蓋所有現有檔案而不顯示提示,即它確認覆蓋所有檔案而不顯示每個檔案的提示。
xcopy 命令提供了許多其他選項;你可以通過執行 xcopy /? 來檢查它們在命令提示符中。
Enjoying our tutorials? Subscribe to DelftStack on YouTube to support us in creating more high-quality video guides. Subscribe