我使用rsync從源文件同步到目的地:防止rsync的
rsync -av --delete source destination
我在目的地側的單個目錄,其上沒有源端。我想阻止rsync刪除此目錄。有沒有我可以傳遞給rsync的選項來防止同步時刪除此目錄?
我使用rsync從源文件同步到目的地:防止rsync的
rsync -av --delete source destination
我在目的地側的單個目錄,其上沒有源端。我想阻止rsync刪除此目錄。有沒有我可以傳遞給rsync的選項來防止同步時刪除此目錄?
您可以使用--exclude排除文件/目錄。這將阻止同步的somedir目錄/刪除:
$ rsync ... --filter 'protect /remote-directory-to-keep/' ...
不同於目前公認的答案:
rsync -avrc --delete --exclude somedir source destination
如在similar question提到的,這可以通過使用--filter
選項與protect
規則完成例如,如果您還希望使用--exclude
和--delete-excluded
,則使用--filter
非常有用。
如果您想從目錄樹中的一個特定位置中排除'somedir',您可以使用「/」來錨定排除。這將提高性能 - rsync只需要檢查一次路徑!例如。 'rsync -avrc - 刪除--exclude/path/p2/somedir源目的地' –
@RandySkretka - 感謝您的提示。這就是我所錯過的。 – Corin
'-r'暗示'-a',不是必需的。 –