「智慧型」合併兩個資料夾的 rsync 指令是什麼?

「智慧型」合併兩個資料夾的 rsync 指令是什麼?

我有一些資料夾被錯誤地重複,我必須將它們合併在一起。假設資料夾A 包含檔案X,資料夾B 包含檔案Y,我想將檔案X 複製到資料夾B。 X :在這些情況下,我想保留文件的最新副本,因此 rsync 應該比較兩個文件,如果來源較舊,則跳過,否則目標是較舊的,覆蓋。

我應該在 rsync 命令列上放置哪些參數?

這是我在谷歌上找到的,但我認為不正確。

rsync -avz --ignore-existing src dest

手冊頁不知何故超出了我的範圍。

PS 在兩個資料夾中都存在檔案的情況下,更好的辦法是將舊檔案覆蓋到目標資料夾中,同時保留舊檔案的副本,作為備份,以防萬一您需要返回舊檔案之前的

答案1

我會用:

rsync -abviuzP src/ dest/
  • -i開啟逐項格式,顯示比預設格式更多的信息
  • -b使兩個資料夾中都存在的 rsync 備份檔案附加~到舊檔案中。您可以透過以下方式控制此後綴--suffix .suf
  • -u使 rsync 傳輸跳過 dest 中比 src 中更新的文件
  • -z打開壓縮,這在透過慢速連結傳輸易於壓縮的檔案時非常有用
  • -P打開--partial並且--progress
  • --partial如果傳輸中斷,則使 rsync 保留部分傳輸的文件
  • --progress顯示每次傳輸的進度條,如果您傳輸大文件,則很有用

相關內容