rsync
14
总安装量
6
周安装量
#23066
全站排名
安装命令
npx skills add https://github.com/chaterm/terminal-skills --skill rsync
Agent 安装分布
claude-code
5
opencode
3
codex
3
github-copilot
3
windsurf
2
trae
2
Skill 文档
rsync æä»¶åæ¥ä¸å¤ä»½
æ¦è¿°
rsync æ¯å¼ºå¤§çæä»¶åæ¥å·¥å ·ï¼æ¯æå¢éä¼ è¾ãè¿ç¨åæ¥ãå¤ä»½çåºæ¯ã
åºç¡ç¨æ³
# æ¬å°åæ¥
rsync -av source/ dest/
# è¿ç¨åæ¥ï¼æ¨éï¼
rsync -av source/ user@remote:/path/dest/
# è¿ç¨åæ¥ï¼æåï¼
rsync -av user@remote:/path/source/ dest/
# 常ç¨åæ°
# -a 彿¡£æ¨¡å¼ï¼ä¿çæéãæ¶é´çï¼
# -v 详ç»è¾åº
# -z åç¼©ä¼ è¾
# -P æ¾ç¤ºè¿åº¦ + æç¹ç»ä¼
# -n 模æè¿è¡ï¼dry-runï¼
常ç¨åæ°ç»å
# æ åå¤ä»½
rsync -avz source/ dest/
# 带è¿åº¦æ¾ç¤º
rsync -avzP source/ dest/
# å é¤ç®æ å¤ä½æä»¶ï¼éå忥ï¼
rsync -avz --delete source/ dest/
# æé¤æä»¶
rsync -avz --exclude='*.log' --exclude='.git' source/ dest/
# ä½¿ç¨æé¤æä»¶
rsync -avz --exclude-from='exclude.txt' source/ dest/
# éå¶å¸¦å®½ï¼KB/sï¼
rsync -avz --bwlimit=1000 source/ dest/
è¿ç¨åæ¥
# éè¿ SSHï¼é»è®¤ï¼
rsync -avz -e ssh source/ user@host:/path/
# æå® SSH 端å£
rsync -avz -e 'ssh -p 2222' source/ user@host:/path/
# ä½¿ç¨ SSH å¯é¥
rsync -avz -e 'ssh -i ~/.ssh/key' source/ user@host:/path/
# rsync daemon 模å¼
rsync -avz source/ rsync://user@host/module/
å¤ä»½çç¥
å¢éå¤ä»½
# 使ç¨ç¡¬é¾æ¥å®ç°å¢éå¤ä»½
rsync -avz --link-dest=/backup/latest source/ /backup/$(date +%Y%m%d)/
# æ´æ° latest 龿¥
ln -snf /backup/$(date +%Y%m%d) /backup/latest
宿¶å¤ä»½èæ¬
#!/bin/bash
set -euo pipefail
SOURCE="/data/"
DEST="/backup/"
DATE=$(date +%Y%m%d_%H%M%S)
LATEST="$DEST/latest"
BACKUP="$DEST/$DATE"
# å¢éå¤ä»½
rsync -avz --delete --link-dest="$LATEST" "$SOURCE" "$BACKUP"
# æ´æ° latest 龿¥
ln -snf "$BACKUP" "$LATEST"
# ä¿çæè¿ 7 天
find "$DEST" -maxdepth 1 -type d -mtime +7 -exec rm -rf {} \;
常è§åºæ¯
åºæ¯ 1ï¼ç½ç«æä»¶åæ¥
# 忥ç½ç«æä»¶ï¼æé¤ç¼å忥å¿
rsync -avz --delete \
--exclude='cache/' \
--exclude='*.log' \
--exclude='uploads/tmp/' \
/var/www/html/ backup@remote:/backup/www/
åºæ¯ 2ï¼æ°æ®åºå¤ä»½åæ¥
# å
å¯¼åºæ°æ®åº
mysqldump -u root -p database > /backup/db.sql
# 忥å°è¿ç¨
rsync -avzP /backup/db.sql backup@remote:/backup/mysql/
åºæ¯ 3ï¼æç¹ç»ä¼ 大æä»¶
# ä½¿ç¨ -P åæ°æ¯ææç¹ç»ä¼
rsync -avzP large_file.tar.gz user@remote:/path/
# 妿䏿ï¼éæ°æ§è¡ç¸åå½ä»¤å³å¯ç»§ç»
æ éææ¥
| é®é¢ | è§£å³æ¹æ³ |
|---|---|
| æéé误 | æ£æ¥ç®æ ç®å½æéï¼ä½¿ç¨ --chmod |
| è¿æ¥è¶ æ¶ | æ£æ¥ç½ç»ãSSH é ç½®ãé²ç«å¢ |
| 空é´ä¸è¶³ | æ¸
çç®æ ç£çï¼ä½¿ç¨ --max-size éå¶ |
| åæ¥æ ¢ | ä½¿ç¨ -z å缩ï¼--bwlimit éé |
| æä»¶è¢«è·³è¿ | æ£æ¥ --exclude è§åï¼ä½¿ç¨ -v æ¥ç详æ
|
注æäºé¡¹
# æºè·¯å¾æ«å°¾ç / å¾éè¦ï¼
rsync -av source/ dest/ # 忥 source ç®å½å
å®¹å° dest
rsync -av source dest/ # 忥 source ç®å½æ¬èº«å° dest/source
# å
ç¨ -n 模æ
rsync -avzn --delete source/ dest/
# 确认æ è¯¯åæ§è¡
rsync -avz --delete source/ dest/