2016-11-04 61 views
0

我試圖運行下面的rsync命令失敗:rsync的帶花括號擴展

$ rsync -avz --delete . [email protected]:/projects/build{08..40}/ 

Unexpected remote arg: [email protected]/projects/build08/ 
rsync error: syntax or usage error (code 1) at main.c(1201) [sender=3.0.6] 

我不明白,爲什麼上面的命令失敗。如果我將build{08..40}替換爲build08,它可以工作。

回答

1

大括號的擴展會導致多個遠程位置傳遞給rsync。

rsync -avz --delete . [email protected]:/dir{1..3}/ 

成爲

rsync -avz --delete . [email protected]:/dir1/ [email protected]:/dir2/ [email protected]:/dir3/ 

產生你所看到的錯誤。

+0

我認爲在這種情況下,rsync會rsync到所有遠程位置。使用'for'和'seq'循環代替工作。謝謝! –