
我在網上搜索但沒有找到答案......我試圖在目的地達到這個結果
Media_Files
Web
Print
我的原始檔案是
Media_Files
Assets
Web
Print
如何排除、刪除、刪除或過濾資料Assets
夾但保留Web/Print
資料夾使用rsync
?謝謝
答案1
您需要分兩步驟執行此操作:
- 複製除 之外的所有內容
Media_Files/Assets
(假設 下還有其他內容Media_Files
)。 - 複製
Media_Files/Assets/Web
。
第一步可以透過以下方式完成
rsync -av --exclude=/Assets/ Media_Files/ destination
這將(詳細地)遞歸地將Madia_Files
目錄(包括權限和其他元資料)複製到destination
,製作destination
的副本(刪除來源路徑上的Media_Files
尾隨以建立)。/
destination/Media_Files
由於排除模式,Assets
直接位於其下的目錄將被忽略。Media_Files
/Assets/
第二步可以透過以下方式完成
rysync -av Media_Files/Assets/Web destination
/
來源路徑末尾缺少意味著Web
將被放入其中destination
。
Media_Files/Assets
如果除此之外您還需要複製其他檔案或目錄Web
,請改用
rsync -av Media_Files/Assets/ destination
這會將所有內容Media_Files/Assets
(包括Web
目錄及其內容)直接複製到destination
.
您可以執行以下兩個步驟:
- 做
destination
一個精確的的副本Media_Files
,包括Media_Files/Assets
. destination/Assets
手動移動您想要移入destination
並刪除的內容destination/Assets
。
簡而言之:
rsync -av Media_Files/ destination
mv -i destination/Assets/* destination
rmdir destination/Assets
最後兩個命令將被修改為僅移動destination/Assets
您想要保留的內容(例如destination/Assets/Web
),並刪除其餘內容(這裡我假設您想要移動所有可見文件和目錄,並且這使Assets
子目錄完全為空)。
答案2
您可以使用以下命令來實現結果
rsync -azvP Media_Files/資產/Web Media_Files/