windows 快速複製檔案 robocopy 的詳細用法?
robocopy
(Robust File Copy)是一個內建於 Windows 的高效檔案和資料夾複製工具,特別適合處理大量檔案。以下是 robocopy
的詳細用法與常見範例。
基本用法
robocopy <來源路徑> <目標路徑> [檔案名稱或篩選條件] [選項]
- 來源路徑:你想複製的檔案或資料夾位置。
- 目標路徑:檔案或資料夾的複製位置。
- 檔案名稱或篩選條件(可選):例如
*.txt
(只複製文字檔案)。 - 選項:控制複製行為的參數。
常用參數
參數 | 功能 |
---|---|
/e |
包括所有子資料夾(即使是空的)。 |
/s |
包括所有非空的子資料夾(不包含空資料夾)。 |
/xo |
跳過目標中已存在且比來源更新的檔案。 |
/xn |
跳過比目標更新的檔案。 |
/r:N |
若檔案被鎖定,重試的次數(預設 1,000,000 次)。 |
/w:N |
重試前等待的秒數(預設 30 秒)。 |
/mt[:N] |
多執行緒模式(預設 8 個執行緒)。N 是執行緒數(最大 128)。 |
/purge |
刪除目標中來源路徑中不存在的檔案(用於同步資料夾)。 |
/mov |
搬移檔案(搬移後刪除來源檔案)。 |
/mir |
鏡像模式,等同於 /e + /purge ,保持來源和目標完全同步。 |
/log:<檔案> |
將操作記錄輸出到指定檔案,而非顯示於螢幕上。 |
/dcopy:T |
複製目錄的時間屬性(預設不會複製)。 |
範例操作
1. 基本複製(包含所有子資料夾)
robocopy "C:\SourceFolder" "D:\TargetFolder" /e
包括來源資料夾中的所有檔案與子資料夾(即使是空的)。
2. 僅複製指定類型的檔案
robocopy "C:\SourceFolder" "D:\TargetFolder" *.txt /e
- 只複製
.txt
檔案,包含子資料夾。
3. 跳過已存在的檔案
robocopy "C:\SourceFolder" "D:\TargetFolder" /e /xo
- 只複製來源中比目標更新的檔案。
4. 使用多執行緒加速
robocopy "C:\SourceFolder" "D:\TargetFolder" /e /mt:16
- 使用 16 個執行緒來加速複製。
5. 同步資料夾(刪除多餘檔案)
robocopy "C:\SourceFolder" "D:\TargetFolder" /mir
- 將目標資料夾與來源資料夾完全同步(多餘檔案會被刪除)。
6. 搬移檔案而非複製
robocopy "C:\SourceFolder" "D:\TargetFolder" /mov
- 將檔案從來源搬移到目標,來源中的檔案會被刪除。
7. 記錄操作到檔案
robocopy "C:\SourceFolder" "D:\TargetFolder" /e /log:"D:\logfile.txt"
- 將複製過程記錄到
logfile.txt
,避免資訊遺失。
8. 自動重試和等待時間
robocopy "C:\SourceFolder" "D:\TargetFolder" /e /r:5 /w:5
- 如果檔案被鎖定,重試最多 5 次,每次等待 5 秒。
檢查複製結果
在完成後,robocopy
會顯示一個統計摘要,包括:
- 複製的檔案數量。
- 跳過的檔案數量。
- 重試次數。
- 複製時間。
進一步建議
- 加速複製:使用
/mt
增加執行緒數量。 - 大資料夾同步:建議使用
/mir
來保證資料一致性。 - 測試執行:在進行大規模操作前,使用
/l
測試(僅顯示將執行的動作,不實際執行)。
如需更多幫助,請隨時提問!
留言板
歡迎留下建議與分享!希望一起交流!感恩!