rsync只同步指定目录的方法(已测)_服务器其它

rsync同步指定目录
rsync使用–include参数与–exclude参数来实现同步指定目录,并且–exclude目录放在后面。
例如:
linux上文件目录

复制代码 代码如下:

ls /usr/local/apache/htdocs/site
aa
bb
cc
dd
ee
..
zz

只想同步aa,bb,ee这三个目录,其他的不同步。

实现代码:

复制代码 代码如下:

/usr/local/rsync/bin/rsync -azv  --include "aa/" --include "bb/" --include "ee"  --exclude "/*"  --progress rsync://127.0.0.1/site /work/backup/htdocs_bak/site

说明:

–include “aa/” –include “bb/” –include “ee” 包含了你要同步的目录 –exclude包含了不同步的目录所有用“/*”指定。
–exclude “/*” 除了–include同步的目录外,排除其他目录
rsync://127.0.0.1/site 为你rsync服务端要同步的目录
/work/backup/htdocs_bak/site 为你客户端的目录

rsync同步指定正则文件(含子目录)

前阵子做日志备份,把各个服务器上的日志同步到日志服务器上做备份,刚开始比较暴力,把所有压缩好的*gz文件全部传送到日志备份服务器上。后来,发现这种方式非常不好,一旦备份的目录发生改变,服务器上又会把它所有的*gz文件全部再传一遍,即浪费时间又给服务i/o产生不必要的压力,后来想只同步某天的*gz文件。

 需求描述:
有一个类似于这样的目录结构,子目录的个数是不确定的

复制代码 代码如下:

[root@IND_ tlbb]# tree
.
|-- ReadMe.txt
| |-- Audit
| `-- Money_2013-09-10.tgz
|-- Audit_2013-09-10.tgz
`-- Install

我想同步*.py结尾的东东

同步完成后

复制代码 代码如下:

[root@IND_ tlbb]# tree
.
|-- Audit
| `-- Money_2013-09-10.tgz
`-- Audit_2013-09-10.tgz

方式1:(失败)
rsync -auvz –include=”*${YDate}*gz ” ./ 192.168.137.22::tlbb

结果:会把所有的文件都同步过去了,连Install都同步过去了

方式2:
rsync -aruvz –include=”*${YDate}*gz” –include=”*/” –exclude=”*” ./* 192.168.137.22::tlbb

结果:能把今天所有的gz文件都正常传过去喽,先允许所有的匹配的gz文件,再允许所有子目录,最后拒绝所有其他的。

看到这里的朋友大家肯定发现了如果文件夹过多,肯定比较累,直接弄个txt文件将需要同步的与不需要同步都分别弄下就更好了,下面的方法在4.10版本中测试正常

1、只同步制定目录

如果当前目录文件夹有aa,bb,cc,dd等很多文件夹,我们只同步aa,bb,cc

先新建一个txt文件,例如 include.txt

复制代码 代码如下:

aa
bb
cc

只需要这么写就可以了--files-from="include.txt"

复制代码 代码如下:

@echo off
rsync -vzrtopg --progress --no-super --files-from="include.txt" --password-file=wtjb51.secrets /cygdrive/g/www/filesjb51net/web/ jb51@ip::filesjb51

2、不要同步哪些同步

新建一个exclude.txt文件,不同步dd文件夹

复制代码 代码如下:

dd

--exclude-from=exclude.txt

使用rsync -aP --exclude=upload 只能排除upload文件/目录。
如果要排除多个文件/目录,怎么办?
那只能建一个exclude.list,里面填写要排除的目录(一行一个文件/目录),然后rsync -aP --exclude-from=“exclude.list“
如:rsync -aP --exclude-from=/root/exclude.list 192.168.113.118::web_bak/www/ /data/server/www/ (从118同步数据到本机)
补充
--exclude=PATTERN exclude files matching PATTERN
--exclude-from=FILE read exclude patterns from FILE
--include=PATTERN don't exclude files matching PATTERN
--include-from=FILE read include patterns from FILE

补充:
rsync -vau --files-from="/root/syncto.txt" --exclude-from="/root/excludefile.txt" /data/web/ root@192.168.11.12:/data/web/用这种方式就可以了,其中syncto.txt写入要同步的文件,execludefile.txt存不需要同步的文件

时间: 2024-08-02 02:31:50

rsync只同步指定目录的方法(已测)_服务器其它的相关文章

php删除指定目录的方法

 本文实例讲述了php删除指定目录的方法.分享给大家供大家参考.具体分析如下: 这段代码可实现递归删除子目录的功能 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 <?php /** * Delete a file, or a folder and its contents * (recursive algorithm) * @author Aidan Lis

让Win8自带截图工具自动保存图片到指定目录的方法

  在win8系统下,很多用户都比较喜欢使用PRTSC按键来快速获取图,用户在使用PRTSC按键后,系统将自动捕获当前桌面显示屏中的内容,不过使用该方法截图后,所截取的图片将会保存为粘贴板中,而不是以图片形式存储为本地,如果你想要将文件以文件的形式自动保存到本地的话,那么我们就需要对该截图功能进行修改设置,有很多用户不知道如何进行修改,故此小编在这里为大家详细介绍下操作方法,需要的用户不妨看下! 让Win8自带截图工具自动保存图片到指定目录的方法 第一步:在"图片"文件夹下找到&quo

php删除指定目录的方法_php技巧

本文实例讲述了php删除指定目录的方法.分享给大家供大家参考.具体分析如下: 这段代码可实现递归删除子目录的功能 <?php /** * Delete a file, or a folder and its contents * (recursive algorithm) * @author Aidan Lister <aidan@php.net> * @version 1.0.3 * @param string $dirname Directory to delete * @retur

PHP简单实现生成txt文件到指定目录的方法_php技巧

本文实例讲述了PHP简单实现生成txt文件到指定目录的方法.分享给大家供大家参考,具体如下: <?php //fopen第二个参数可以是以下四个,区别就是是清空内容再写还是在后面累加内容 //"w" 写入方式打开,将文件指针指向文件头并将文件大小截为零.如果文件不存在则尝试创建之. //"w+" 读写方式打开,将文件指针指向文件头并将文件大小截为零.如果文件不存在则尝试创建之. //"a" 写入方式打开,将文件指针指向文件末尾.如果文件不存

天翼云盘文件同步与目录设置方法

  在天翼云客户端中,不仅能够为我们提供文件上传功能,而且它还具有文件自动同步的功能,用户在下载使用天翼云PC客户端后,想要让本地文件夹自动与云盘中的文件实现同步,这时我们就需要同步功能,一些刚刚接触到天翼云客户端的用户不知道如何设置同步功能,故此小编为大家编写了该教程,需要的用户赶快试试吧!           设置同步目录的方法   1.用户在首次登陆天翼云PC客户端时,客户端会为用户弹出文件同步设置窗口,这时我们就能够选择需要同步的本地目录了,用户可选择也可不选择,如果没有选择指定同步目录

使用rsync命令同步指定的文件配置

有时需要把所有的文件同步到指定目录下,包括子目录. 执行之前确认要同步的文件名. # rsync -avmn --include='*/' --include='*.pdf' --exclude='*' /SRC/ /DEST/ 以下的2个命令的执行结果是一样的,把SRC目录下的指定文件(在这里是所有的pdf文件,包括子目录下),同步到DEST目录下,但是不同步空目录. # rsync -avm --include='*/' --include='*.pdf' --exclude='*' /SR

inotify-tools+rsync实时同步文件的配置方法_Linux

服务器A:论坛的主服务器,运行DZ X2论坛程序;服务器B:论坛从服务器,需要把X2的图片附件和MySQL数据实时从A主服务器实时同步到B服务器.MySQL同步设置会在下一编中说到.以下是用于实时同步两台服务器的图片. 因为一般的RSYNC需要CRON来定期运行SH脚本来实现同步,这样会带来一些问题.比如用户从主服务器上传上一个图片,需要最少一分钟才能从从服务器显示出来.自从Linux 2.6内核后,支持了inotify机制,当某些文件或文件夹有改变时,发出相应的事件,这样,第三方程序只要订阅这

通过ASP禁止指定IP和只允许指定IP访问网站的代码_应用技巧

一.禁止指定IP防问网站,并执行相应操作: 复制代码 代码如下: <% Dim IP,IPString,VisitIP '设置IP地址,用"|"隔开 IPString="|192.168.0.42|192.168.0.43|" '获取IP地址 IP = Request.ServerVariables("HTTP_X_FORWARDED_FOR") If IP = "" Then IP = Request.ServerVa

AIX系统中删除指定目录、指定后缀、指定天数以前的历史文件_服务器其它

命令: find /home/oracle/admin/zhjport/udump/ -name "*.trc" -mtime +30 -exec rm {} \; 如果要自动执行可以加入CRONTAB 本文出自 "麦地坞" 博客,请务必保留此出处 AIX是什么系统 AIX吧,Advanced Interactive eXecutive(AIX)是IBM专有UNIX操作系统的商标名 aix和redhat linux的不同 1.用法都差不多,只不过AIX要比LINUX