rsync设置只同步某些目录或文件

rsync的配置方法请参考(请先阅读这篇文章)https://blog.whsir.com/post-1501.html

现在想只同步某些目录或文件,这里就用到了–include和–exclude参数,–include是只同步某些目录或文件,但是必须和–exclude配合使用。

只需要在原来客户端的参数上做一些更改,原来客户端命令如下:

rsync --size-only -azvP --password-file=/opt/mima whsir@192.168.0.10::www /home/wwwroot

例如:现在我只想同步服务端/data/www/js/目录下所有文件,其他的目录或者文件我都不想同步,更改后的参数如下

rsync --size-only -azvP --include=js/ --exclude=/* --password-file=/opt/mima whsir@192.168.0.10::www /home/wwwroot

好了,上面的参数已经实现了我的目的,只同步js目录,那么又有一个新问题出现了,如果我想要只同步多个目录怎么办?我要写多个–include吗?当然如果不嫌麻烦也是可以的,不过我这里再介绍一个参数–include-frome,我可以把要同步的目录全部写到一个文件中,然后通过–include-frome来读取这个文件,参数如下:

rsync --size-only -azvP --include-from="/etc/include" --exclude=/* --password-file=/opt/mima whsir@192.168.0.10::www /home/wwwroot
cat /etc/include
js/
css/

这样就实现了只同步js和css两个目录

标签:Rsync 发布于:2019-10-30 12:21:59