Rsync'i şu amaçlarla kullanmak istiyorum ...
- alıcı taraftaki gönderen tarafta da silinen dosyaları sil
- alıcı tarafında rsynced dizininde bulunan diğer dosyaları silmeme
Örneğin, bir dizinim olduğunu varsayalım local-src
:
ÖNCE: local-src
yerel olarak içerir ...
a.txt
b.txt
c.txt
ile içeriğini senkronize etmek istediğim uzak dizinim local-src
çağrılıyor remote-src
.
ÖNCE: remote-src
uzaktan içerir ...
a.txt
b.txt
c.txt
d.txt
README.md
Diyelim ki bazı dosyaları siliyorum local-src
:
YEREL SİLME SONRASI: local-src
yerel olarak ...
c.txt
Kaynakta silinen dosyaların hedefte, ancak hedefteki diğer dosyaları silmeden silinmesini sağlayacak şekilde rsync'i nasıl kullanabilirim. Örneğin, hedefte aşağıdakilere sahip olmak istiyorum:
YEREL SİLME SONRASI: remote-src
uzaktan ...
c.txt
d.txt
README.md
Yani, a.txt
ve b.txt
uzaktan da silinir fakat d.txt
ve README.txt
yalnız bırakılır.
Bunu rsync ile başarmanın bir yolu var mı?
EDIT: Karar rsync ile bu imkansız olabilir gibi görünüyor. Kullanım durumumu göstermek için buna neden ihtiyacım olduğu soruldu:
Diyelim ki bir web sunucum var. Bu web sunucusunda, bir dizin dizinim var, diyelim ki bir dizin A
ve public_html
sitemin sunulduğu bir dizin var. Dizin içinde dosya üreten bazı otomatik işlemlerim olduğunu varsayalım A
. Ben rsync gibi (veya senkronizasyon diğer bazı araç kullanarak) oluşturulan veya dosyaları ediyorum güncellenen içinde A
hiç public_html
dahilinde olabilecek diğer keyfi dosyaları silmeden, dizindeki public_html
. Kesinlikle rsync web sitemi yanlışlıkla silmesini istemiyorum.
Rsync bu iş için bir araç değilse, başka biri bunu nasıl yapabileceğimi biliyor mu?
rsync
, bunun uzak klasörde nerede olduğunu bilmenin bir yolu olmadığından bunun mümkün olduğunu düşünmüyorum . Başka bir araç bulmanız gerekebilir.