我想同步兩個目錄的內容。
- 如果兩個檔案具有相同名稱但大小不同,則不覆蓋但建立副本
- 如果兩個檔案具有相同的名稱和大小,則不會重複。
- 遞歸地工作
到目前為止,我發現以下命令可能有效
$ rsync -varE --progress ~/folder /volumes/server/folder
但我不完全確定該-E
標誌的作用。它是由 bananica.com 上的用戶建議的,但在手冊中找不到它的描述。這能成功滿足我的要求嗎?
答案1
-E 實際上保留了 OS X 上的擴充屬性,但 -a (--archive) 意味著 -p (--perms),而 -p (--perms) 意味著 --executability。
-b (--backup) 在通常會被覆蓋的文件末尾加上波浪號:
rsync -ab ~/folder /Volumes/server/
-b --suffix _old
將 file.txt 重新命名為 file.txt_old
預設情況下,rsync 會比較檔案大小和修改時間。 --size-only 只比較大小。 -c 比較校驗和,但速度較慢。