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两个目录