rsync 同步排除目录

rsync同步命令的基本写法

rsync 命令选项 源目录 目标目录

假如源目录写为 /var/www/就会把该目录下所有文件同步到目标目录,如果写为/var/www/*,那么当前目录下的隐藏文件(文件夹名或文件名是以”.”号开头)则不会被同步,不过子目录中的隐藏文件还是会被同步。

假设需要排除某个文件(或文件夹),可以用�Cexclude来指定,例如需要排除源目录下的dir1文件夹,可以写为:

 --exclude=abc_[a-z]* 

/usr/bin/rsync -vzrtopg �Cexclude=dir1 /var/www/src/ /var/www/dest

可以同时排除多条,例如:

/usr/bin/rsync -vzrtopg �Cexclude=dir1 �Cexclude=dir2 /var/www/src/ /var/www/dest

除了上述方法,还可以通过�Cexclude-from来指定,例如:

/usr/bin/rsync -vzrtopg �Cexclude-from=exclude.list /var/www/src/ /var/www/dest

exclude.list文件中指定需要排除的列表,例如:

rsync -avz --exclude-from=exclude.list  --password-file=/etc/rsyncd.ss  [email protected]::backabc  /var/abc/ >/dev/null 2>&1

dir1
[0-9]*
dir2/.[a-z0-9]*
.svn

含义是排除/var/www/dir1、/var/www目录下所有以数字作为名字的文件和文件夹、/var/www/dir2/目录下的隐藏文件和/var/www目录下所有.svn文件夹,包括其子目录中的.svn文件夹。

注意:exclude和exclude-from前面都是有两个减号,如果漏写了一个,命令行不会报错,但是不能排除执行的文件或文件夹


你可能感兴趣的:(rsync)