Rsync chỉ thay đổi tập tin


14

Có thể rsyncchuyển tất cả các tệp trong một thư mục đã thay đổi hoặc đã được tạo không? Tôi không cần một cái gì đó tinh vi như kiểm tra khác biệt CRC; các tệp có dấu thời gian khác nhau và / hoặc kích thước tệp được tính là thay đổi.

Tôi nhận được ấn tượng từ trang man rằng nó có thể, nhưng tôi cần một chút hướng dẫn về tập hợp các tham số cần vượt qua rsync.

Câu trả lời:


19

Để chỉ đồng bộ hai thư mục:

$ rsync /source/path/* /dest/path/

Hoặc nếu bạn muốn làm cả một cây:

$ rsync -a /source/path/ /dest/path/

"-A" chỉ định chế độ "lưu trữ", trong đó nó sao chép cây càng sát càng tốt.

Tôi muốn thêm các cờ vPtrong đó để tôi có thể xem nó hoạt động:

$rsync -avP /source/path/ /dest/path/

"-V" bật chế độ dài dòng, do đó bạn có thể thấy những gì nó đang làm (nó liệt kê các tệp khi chúng sao chép) và "-P" cho phép tiến trình, do đó bạn có thể thấy thời gian sao chép từng tệp (phần trăm được sao chép, thời gian còn lại, v.v.) và cho phép bạn xem bạn đã đi được bao xa.


3
... và có lẽ thêm cờ z để sử dụng nén cho chuyển khoản
Linker3000

4
... nếu bạn đang chuyển đến một địa điểm xa
Majenko

14

Đây là cách rsynchoạt động theo mặc định (ít nhất là trên Linux). Từ trang người đàn ông :

Rsync tìm thấy các tệp cần được chuyển bằng thuật toán "kiểm tra nhanh" (theo mặc định) để tìm các tệp đã thay đổi kích thước hoặc trong thời gian sửa đổi lần cuối. Mọi thay đổi trong các thuộc tính được bảo toàn khác (theo yêu cầu của tùy chọn) được thực hiện trực tiếp trên tệp đích khi kiểm tra nhanh cho biết rằng dữ liệu của tệp không cần phải cập nhật.


Ah, tôi đã nhầm lẫn bản thân mình bằng cách đọc sai tài liệu. Cảm ơn :)
instanceofTom
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.