2015-12-03 226 views
1

這項工作是從服務器中的多個目錄下載「txt」文件。例如,我們希望從以下目錄下載所有「txt」文件。使用rsync從多個目錄同步txt文件

/home/user/dir1 
/home/user/dir2 
/home/user/dirHello 

我的解決方案是創建三個獨立的命令和每個命令的樣子:

rsync -ar --include="*/" --include="*.txt" --exclude="*" [email protected]:/home/user/dir1(dir2,dirHello) destination_dir 

它的工作原理!但我想知道我能用一個命令來完成這項工作嗎?

一些參考鏈接:

https://unix.stackexchange.com/questions/2161/rsync-filter-copying-one-pattern-only

https://unix.stackexchange.com/questions/174674/rsync-a-list-of-directories-with-absolute-path-in-text-file

回答

1

你可以做到這一點提供一個或多個源迪爾斯進行rsync所以你也可以這樣做:

rsync -ar --include="*/" --include="*.txt" --exclude="*" [email protected]:/home/user/dir1 [email protected]:/home/user/dir2 [email protected]:/home/other_user/dirHello destination_dir 
+0

什麼,如果DIR1 ,dir2,dirHello不共享一個共同的父目錄/ home/uer? – Fihop

+0

在這種情況下,它很簡單。看到我更新的答案 – rainkinz

+0

非常感謝。另一個簡單的問題是,如果我不想包含來自子目錄 – Fihop