EndSound's Life

【技術】Linux指令: rsync

基本用法

$ rsync [OPTION...] SRC... [DIST]

常見的Option:

  • -v: verbose模式。
  • -r: 遞迴備份。
  • -a: 封裝備份模式, 保留連結檔、檔案的擁有者、群組、權限以及時間戳記。
  • -z: 啟用壓縮。
  • -h: 將數字以比較容易閱讀的格式輸出。
  • --progress: 顯示傳輸速度。
  • --delete: 刪除來源端沒有的檔案。
  • --remove-source-files: 自動刪除來源檔。
  • --dry-run: 虛假的執行,會輸出訊息,但不會真正的執行。

遠端備份

預設使用ssh方式傳輸。

$ rsync [OPTION...] SRC... [user]@[host]:[dist]

備份特定檔案

$ rsync -avh --exclude '*.txt' --exclude '*.py' myfolder/ backup/

意思是排除所有.txt.py副檔名的檔案。

$ rsync -avh --include '*.c' --include '*/' --exclude '*' myfolder/ backup/

意思是包含*.c-備份所有.c副檔名的檔案,包含*/-所有子目立,排除*-其他, 注意 --exclude 要放在 --include 之後,順序不可以對調。

參考:
Linux使用rsync遠端檔案同步與備份工具教學與範例

Leave a Reply