Làm thế nào để Robocopy xác định xem một tập tin có bị thay đổi không?


17

Tôi đang tìm kiếm thông tin chi tiết về cách thuật toán Robocopy xác định xem một tệp có thay đổi hay không. Nếu tôi sử dụng ví dụ tham số / mir, Robocopy phải xác định tệp nào được thay đổi và tệp nào không. Nó có sử dụng dấu thời gian hoặc kích thước tệp đã sửa đổi, băm kết hợp tất cả không?

Thật thú vị, nó không nói gì về nó trong tài liệu.

Câu trả lời:


25

Ok sau khi dành cả ngày để nghiên cứu điều này, đọc tài liệu và tự kiểm tra (tất cả đều có cùng kết quả), tôi có câu trả lời.

Một câu trả lời ngắn gọn là: giá trị mặc định của Robocopy là (trừ khi bạn chỉ định một cái gì đó khác nhau thông qua các tham số) rằng nó sẽ sao chép bất kỳ tệp nào có Dấu thời gian HOẶC kích thước tệp khác nhau . Ghi nhớ bản sao LUÔN LUÔN sao chép từ Nguồn đến Đích. Vì vậy, nếu bạn có tệp mới hơn VÀ lớn hơn ở đích, Robocopy sẽ ghi đè lên tệp đó bằng tệp cũ hơn và nhỏ hơn từ nguồn (đó là lý do tại sao tôi nhấn mạnh vào từ "khác biệt" - nó không mới hơn hoặc lớn hơn , chỉ khác).

Ở cấp độ sâu hơn, bạn có thể kiểm tra với tùy chọn / it ngay cả khi các thuộc tính của tệp khác nhau và sao chép các thuộc tính khác nhau - ngay cả khi kích thước tệp và Dấu thời gian giống nhau (OK, đối với 100%, tôi không biết nếu nó sẽ sao chép tệp hoặc chỉ các thuộc tính bị thiếu, nhưng vì các tệp giống hệt nhau, kết quả sẽ giống nhau).

Tôi tìm thấy tài liệu dài được trích dẫn trong luồng khác - đó là về phiên bản XP010 (tôi đoán đó là Windows XP). Nhưng đơn giản là không có tài liệu mới hơn cho robocopy. Bạn có thể tìm tài liệu ở đây:

http://theether.net/doad/Microsoft/Utilities/robocopy.pdf (Đọc phần "Sử dụng các lớp tệp Robocopy", mọi thứ được trình bày khá chính xác ở đó)

Tài liệu nói về phiên bản cũ hơn của Robocopy (Trong Win7, bạn thường có Phiên bản XP027) - nhưng bạn có thể kiểm tra các thay đổi của phiên bản trên trang web này - có tổng quan rất gọn gàng:

http://yarcgui.wilkes.es/De/RoboCopy/index.htm

Điểm mấu chốt là không có nhiều khác biệt giữa ngay cả XP và Win7 - chỉ có những thay đổi nhỏ và thay đổi là thêm tham số - không thay đổi chúng (ngoại trừ tham số / mir). Và tôi nghĩ thật an toàn khi nói cơ chế so sánh sẽ không thay đổi - vì đây sẽ là một điều rất lớn so với thay đổi rất nhỏ của việc thêm một số tham số.

Đây có lẽ là lý do mà không có tài liệu mới.

Hy vọng rằng sẽ giúp nếu bạn đang tìm kiếm thông tin tương tự và đang đọc này. Tôi đã cố gắng chính xác và thực hiện nghiên cứu của tôi một cách cẩn thận.


2
Nó sử dụng dấu thời gian được tạo, sửa đổi hoặc cả hai dấu thời gian?
user643011

@ user54512 Tôi hoàn toàn không hiểu .. vậy nó có sử dụng dấu thời gian hay băm không?
Shaya

1
@shayan: được viết ở đó, nếu Dấu thời gian HOẶC Tệp kích thước khác nhau, nó sẽ sao chép từ nguồn đến đích. Không băm. Phần còn lại là trong tài liệu tôi đặt trong liên kết.
dùng54512
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.