今天在配置服務(wù)器同步額時候,需要排除一些不經(jīng)常更新或文件夾內(nèi)容過多的,提高同步效率,經(jīng)過測試通過rsync的exclude-from就可以實現(xiàn)
假設(shè)最開始的命令是這樣的
rsync -e 'ssh -p 30000' -avl --delete --stats --progress demo@123.45.67.890:/home/demo /backup/
一、排除單獨的文件夾和文件
要排除sources文件夾,我們可以添加 '--exclude' 選項:
--exclude 'sources'
命令是這樣的:
rsync -e 'ssh -p 30000' -avl --delete --stats --progress --exclude 'sources' demo@123.45.67.890:/home/demo /backup/
要排除 "public_html" 文件夾下的 "database.txt" 文件:
--exclude 'public_html/database.txt'
命令是這樣的:
rsync -e 'ssh -p 30000' -avl --delete --stats --progress --exclude 'sources' --exclude 'public_html/database.txt' demo@123.45.67.890:/home/demo /backup/
二、使用 '--exclude-from' 排除多個文件夾和文件
建立文件:
/home/backup/exclude.txt
在里面定義要排除的文件夾和文件
sources
public_html/database.*
downloads/test/*
經(jīng)過測試一般
文件夾
uploads
download/softs/
使用指令:
--exclude-from '/home/backup/exclude.txt'
最后的命令如下:
rsync -e 'ssh -p 30000' -avl --delete --stats --progress --exclude-from '/home/backup/exclude.txt' demo@123.45.67.890:/home/demo /backup/
rsync如何實現(xiàn)同步目標路徑下的目錄,不同步路徑下的文件 ,只想同步目錄
復(fù)制代碼 代碼如下:
rsync -av --delete -f '+ */' -f '- *' SRC/ DEST/