Tôi muốn sử dụng rsync để ...
- xóa các tập tin ở phía bên nhận cũng bị xóa ở phía gửi
- không xóa các tệp khác trong thư mục rsynced ở phía nhận
Ví dụ: giả sử tôi có một thư mục local-src
:
TRƯỚC: local-src
địa phương chứa ...
a.txt
b.txt
c.txt
thư mục từ xa của tôi mà tôi muốn đồng bộ hóa với nội dung của local-src
được gọi remote-src
.
TRƯỚC: remote-src
từ xa chứa ...
a.txt
b.txt
c.txt
d.txt
README.md
Hãy nói rằng tôi xóa một số tệp trong local-src
:
SAU KHI XÓA ĐỊA PHƯƠNG: local-src
chứa tại địa phương ...
c.txt
Làm cách nào tôi có thể sử dụng rsync theo cách để đảm bảo rằng các tệp bị xóa tại nguồn cũng bị xóa tại đích, nhưng không xóa các tệp khác tại đích. Ví dụ: tôi muốn có những điều sau đây tại điểm đến:
SAU KHI XÓA ĐỊA PHƯƠNG: remote-src
chứa từ xa ...
c.txt
d.txt
README.md
Đó là, a.txt
và b.txt
cũng bị xóa từ xa, nhưng d.txt
và README.txt
được để lại một mình.
Có cách nào để đạt được điều này với rsync không?
EDIT: Phán quyết dường như là điều này có thể là không thể với rsync. Tôi đã được hỏi tại sao tôi cần điều này, vì vậy để minh họa trường hợp sử dụng của tôi:
Hãy nói rằng tôi có một máy chủ web. Trên máy chủ web đó, tôi đã có một loạt các thư mục, giả sử rằng tôi có một thư mục A
và một public_html
thư mục mà trang web của tôi được phục vụ từ đó. Hãy nói rằng tôi có một số quy trình tự động tạo ra các tệp trong thư mục A
. Tôi muốn rsync (hoặc đồng bộ sử dụng một số công cụ khác) các tập tin được tạo hoặc cập nhật trong A
vào public_html
thư mục, mà không xóa các tập tin tùy ý khác mà có thể trong vòng public_html
. Tôi chắc chắn không muốn rsync vô tình xóa trang web của mình.
Nếu rsync không phải là công cụ cho công việc này, liệu có ai khác biết làm thế nào tôi có thể làm điều này không?
rsync
vì không có cách nào để biết tập tin nào đã có trong thư mục từ xa. Bạn có thể cần phải tìm ra một công cụ khác.