Chinaunix首页 | 论坛 | 博客
  • 博客访问: 59143
  • 博文数量: 12
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 115
  • 用 户 组: 普通用户
  • 注册时间: 2013-11-11 09:37
文章分类

全部博文(12)

文章存档

2019年(10)

2013年(2)

我的朋友

分类: 网络与安全

2019-03-04 13:30:09

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


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


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

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

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

<其中include和exclude都是相对路径,/* 表示站点目录的其他所有文件;js/表示只同步此文件夹>

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


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

这样就实现了只同步jscss两个目录

阅读(3141) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~