Rsync
如何將目錄同步到具有不同名稱的新目錄?
我正在進行數據傳輸,舊文件系統深深依賴於現在位於不同路徑上的目錄。這是一個線上儲存程式碼的 git 目錄。我無權移動或重命名它。
所以我能做的就是將此目錄同步到相同的舊路徑。但是目錄名稱也發生了變化。
有沒有一種簡單的方法可以將目錄同步到具有不同名稱的目標目錄?
如果要用於
rsync
遞歸地使dest
目錄成為目錄的精確副本src
:rsync -a src/ dest
rsync
手冊頁解釋了這是如何工作的:源上的尾部斜杠
$$ … $$避免$$ s $$在目的地創建一個額外的目錄級別。您可以將源的尾隨
/
視為“複製此目錄的內容”而不是“按名稱複製目錄”$$ … $$
🚀 快速入門
跑:
rsync -av --exclude='path1/in/source' --exclude='path2/in/source' [source]/ [destination]
🔖 備註
-avr
將創建一個名為[destination]
.
source
並source/
創造不同的結果:
source
— 將文件夾源複製到目標。source/
— 將源的內容複製到目標。要排除許多文件:
--exclude-from=FILE
—FILE
是包含要排除的其他文件或目錄的文件的名稱。
--exclude
也可能包含萬用字元:
- 例如
--exclude=*/.svn*
修改自:https ://stackoverflow.com/a/2194500/749232
🎟 例子
起始文件夾結構:
. ├── destination └── source ├── fileToCopy.rtf └── fileToExclude.rtf
跑:
rsync -av --exclude='fileToCopy.rtf' source/ destination
結束文件夾結構:
. ├── destination │ └── fileToExclude.rtf └── source ├── fileToCopy.rtf └── fileToExclude.rtf