fswatch rsync配置使用 rsync 傳輸大量細小文件


 貼一個腳本這個腳本是rsync遠程同步使用的一個腳本

rsync -avz --progress --exclude .git /Users/piperck/Desktop/gogogo/x piperck@:/home/piperck/project

 在mac下配合fswatch使用可以達到監控文件變化,然后進行遠程同步的目的。

fswatch -o /Users/piperck/Desktop/gogogo/x  | xargs -0 -n 1 -I {} rsync -avz --progress --exclude .git /Users/piperck/Desktop/gogogo/x piperck@ip:/home/piperck/project

 

rsync 本身進行文件傳輸的能力也非常強大和高效。

有時候我們可能會用來傳輸大量文件

如果不需要校准不進行增量傳輸的話可以使用 rsync -avW 來進行傳輸。 -z 是會對傳輸內容進行壓縮,所以如果我們只是需要單純的最大速度將現在的文件內容或者文件夾內容全力傳輸到目的地。我們會這用 -W 命令來關閉判斷對方是否已經有這個文件以及對文件進行更新。 

-W, --whole-file 拷貝文件,不進行增量檢測 

-a, --archive 歸檔模式,表示以遞歸方式傳輸文件,並保持所有文件屬性,等於-rlptgoD 

-v, --verbose 詳細模式輸出

-z, --compress 對備份的文件在傳輸時進行壓縮處理

這樣可以保證我們用最大速度將文件內容傳輸至目標文件。 有時候大量細碎文件進行隨機讀取並且傳輸速度可能會慢得難以忍受。所以才有了之后直接快遞硬盤的操作! XD

 

 

reference:

https://serverfault.com/questions/18125/how-to-copy-a-large-number-of-files-quickly-between-two-servers

https://github.com/emcrisostomo/fswatch/wiki/How-to-Use-fswatch fswatch tutorial

https://segmentfault.com/a/1190000005053788 ->hello fswatch

http://os.51cto.com/art/201006/203217.htm -> rsync命令全解

http://c.biancheng.net/cpp/view/2739.html -> Shell特殊變量:shell $0,$#,$*,$@,$?,$$和命令行參數

http://suren1986.in/?tag=fswatch -> 監聽fsevents事件自動同步文件夾


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM