Ubuntu

rsync 只刪除之前同步過的文件

  • September 19, 2019

目標: 我想將本地儲存庫複製到遠端伺服器。這包括新的、修改的和刪除的文件。

問題: rsync --delete將刪除(在目標上)源(我的倉庫)中不存在的任何內容。但是,我在伺服器上有一些不在我的倉庫中的重要文件(媒體、資產、配置文件等)。所以我想保留這些文件,但刪除使用 rsync 之前同步的所有文件。

換句話說,我的 repo 中的任何內容和我刪除的內容都應該從伺服器中刪除,但我伺服器上的其他文件不應該被刪除。

有沒有辦法做到這一點?

rsync 無法區分執行 rsync 之前存在的文件和之後創建的文件,除非您可以確保修改日期。您最好的選擇是為 repo 使用不同的目錄或使用過濾器,include/exclude 和 include-file/exclude-file。所有這些選項都可以在 rsync 手冊頁中找到,或者使用您喜歡的搜尋引擎進行簡單搜尋。

引用自:https://serverfault.com/questions/984719