Công cụ dòng lệnh Robocopy (đi kèm với hầu hết các phiên bản windows)
Trên máy Windows 10 của tôi, nó được đặt tạiC:\Windows\System32
Từ Wikipedia , nó có thể được sử dụng với bộ tùy chọn sau để bảo toàn dấu thời gian của tệp và thư mục, cũng như các thuộc tính khác:
Robocopy C:\some_directory D:\some_directory /DCOPY:T /COPYALL /E /R:0
/DCOPY:T
giữ nguyên Dấu thời gian của Thư mục gốc (yêu cầu phiên bản XP026 trở lên)
/E
: Sao chép thư mục đệ quy, bao gồm cả Thư mục trống
/R:0
: không thử lại các tệp bị khóa (số lần thử lại trên các bản sao không thành công giá trị mặc định là 1 triệu),
/COPYALL
: Sao chép tất cả thông tin tệp,
(tương đương với /COPY:DATSOU
, ở đâu
D
= Dữ liệu,
A
= Thuộc tính,
T
= Dấu thời gian tệp ,
S
= Bảo mật = ACL NTFS,
O
= Thông tin chủ sở hữu,
U
= Thông tin kiểm toán),
Nếu bạn chỉ muốn duy trì dấu thời gian của ngày và thư mục, nhưng không muốn các thư mục con trống được sao chép và không muốn các thuộc tính khác được bảo tồn thì bạn có thể sử dụng:
Robocopy C:\some_directory D:\some_directory /DCOPY:T /COPY:T /S
nơi /S
sao chép các thư mục con không trống
Để xem cú pháp đầy đủ, hãy nhập robocopy /?
vào dấu nhắc lệnh hoặc xem qua các bài đăng trên blog này: https://ss64.com/nt/robocopy.html và
https://techjTHER.net/robocopy-syntax-command-line -chuyển đổi và ví dụ /
Một ví dụ về lệnh tôi mới chạy:
Robocopy D:\ C:\D_backup /DCOPY:T /COPYALL /E /R:0 /ZB /ETA /TEE /V /FP /XD D:\$RECYCLE.BIN /XD "D:\System Volume Information" /LOG:C:\D_backup_robocopy.LOG /MIR
Lưu ý cách loại trừ 2 thư mục con yêu cầu /XD
cờ được sử dụng hai lần. Ngoài ra, loại trừ thư mục thứ hai sử dụng dấu ngoặc kép vì có khoảng trắng trong tên thư mục.
Cuối cùng, bạn có thể thêm /L
cờ để kiểm tra lệnh trước khi thực hiện. Bằng cách này, bạn có thể xác minh rằng nó sẽ không sao chép (hoặc xóa) bất kỳ thư mục / tệp nào bạn không muốn và không có lỗi trong lệnh của bạn.
Chỉnh sửa: gotcha khi sao chép từ Thư mục gốc (còn gọi là ổ đĩa) sang Thư mục (thư mục không gốc)
Sau khi chạy lệnh ví dụ ở trên, thư mục không hiển thị! (Mặc dù show hidden files
và show system files
đã được kiểm tra trong Windows 10!) Lệnh sau theo https://serverfault.com/a/455029/399723 đã sửa lỗi này:
attrib -h -s C:\D_backup
Ngoài ra, việc thêm /A-:SH
"bỏ đặt thuộc tính ẩn khỏi tệp hệ thống", do đó có thể ngăn thư mục bị ẩn ở vị trí đầu tiên, theo https://serverfault.com/a/565804/399723 . Xem thêm https://ss64.com/nt/robocopy.html .
Đây descussion làm sáng tỏ thêm về tùy chọn này như một giải pháp.
Robocopy D:\ C:\D_backup /A-:SH /DCOPY:T /COPYALL /E /R:0 /ZB /ETA /TEE /V /FP /XD D:\$RECYCLE.BIN /XD "D:\System Volume Information" /LOG:C:\D_backup_robocopy.LOG /MIR
Phần mềm khác:
Ngoài ra, bạn có thể tải xuống phiên bản GUI của robocopy nếu bạn không muốn sử dụng dòng lệnh.
Một tiện ích windows khác là XCopy , mặc dù nó được bao gồm trong windows 10, nhưng nó không được dùng nữa. Xem các liên kết cho gotchas.
Trang Wikipedia cho RoboCopy (được liên kết ở đầu bài này) liệt kê các phần mềm khác có thể được sử dụng.