
我的主目錄中有一個大資料夾“X”,並且在閃存驅動器上有一個過時的副本 - rm Y; cp X Y
Y。
答案1
還有很多屬性可供選擇同步比之前的答案提到的。你應該自己調查一下:
man rsync
但對於你的問題我建議:
rsync -a --delete X Y
這樣,接收者 (Y) 將刪除它所擁有的 X 以外的任何檔案。錯誤地使用 root 可以輕鬆殺死你的系統...:)
答案2
看一眼同步(1)。它的目的幾乎完全是你想要的。
rsync -av X Y
它支援透過自己的協定或 ssh 進行遠端複製,但也可以在本地使用。
根據您想要的具體行為,您可能還想傳遞該--update
選項。這將告訴 rsync 不要覆蓋目標上已存在且比來源中的檔案新的檔案。
如果您想要刪除額外的檔案(即存在於 Y 中但不存在於 X 中的檔案),您可以新增該--delete
選項。
答案3
你可能會使用Fitus/Zaloha.sh。它首先計算必要的同步操作,將它們呈現給您,要求確認,然後執行它們:
$ Zaloha.sh --sourceDir="X" --backupDir="Y"
答案4
我認為您在選項 -u (更新)中尋找的一些功能實際上存在於此選項中:
“--ignore-existing”-跳過更新接收器上存在的文件