
我不敢相信我在透過 Windows 命令列將一個目錄複製到另一個目錄時遇到了麻煩。
我想做的很簡單──:
假設我有目錄 -:
C:\test
我想將測試複製到D:所以在D中應該有一個如下所示的資料夾-:
D:\test
當我使用
robocopy C:\test D:\test \E
D 磁碟機的根目錄中包含 C:\test 的內容,而不是包含在名為 test 的目錄中。
這個簡單的事情你怎麼做?
答案1
如果要建立完全相同的副本,請使用下列版本(相當於新增 /E 和 /PURGE:
robocopy c:\source d:\destination /MIR
如果您只想複製目錄和子目錄(包括空目錄),請使用
robocopy c:\source d:\destination /E
正是 E 選項上的反斜線讓您困惑。
要了解有關 Robocopy 的更多信息,可以方便地搜索:
答案2
在我看來,robocopy
前面的答案中的用法實際上並沒有回答問題,即將來源資料夾及其內容複製到目標資料夾。
以下是對我有用的。它保留創建日期並將活動記錄到文件和螢幕上。如果無法存取文件,它還會重試最多 5 次讀取文件。請隨意修改標誌以滿足您的需求。
robocopy 'G:\Some Directory\A ' 'E:\Some Directory\A ' /e /dcopy:T /mt /tee /log:A.log /r:5
有兩個對我來說似乎不明顯的觀察:
- 路徑字串需要以空格結尾,以便在目標位置建立來源根目錄,而不僅僅是其內容(不含包含目錄)。
- 目標的根目錄需要位於目標路徑中,即使在發出命令之前它不會退出。
- 根目錄的原始建立日期仍將保留。
我感到驚訝的是,像所詢問的那樣普遍需要的操作卻沒有得到更好的記錄。
答案3
答案4
雖然這個答案沒有使用robocopy
,但我認為它仍然達到了複製目錄的目的。
您可以嘗試使用:xcopy
用法:xcopy source [destination] ...
您可以透過執行來檢查更多詳細信息x複製/?