海浪家园

rsync使用delete参数无法同步删除的问题

理论上说rsync同步过程中,如果带上delete的参数,当源目录中的文件删除时,同步后目标目录中的文件也会被删除,但如果源目录写法不当,可能无法达到同步删除目标目录的文件。例如:

/usr/bin/rsync -avzrL –progress –delete ~/src/* ~/dest/
当删除src下的文件或文件夹时,同步后dest中还是存在,如果是删除src的子目录下的,同步后dest中会被删除,

而下面命令就不一样,不管删除的是哪个文件夹下的内容,同步dest都会做相同的删除:
/usr/bin/rsync -avzrL –progress –delete ~/src/ ~/dest/

上述两条命令的不同之处就是在src后面是否带*号,另外如果src目录后不带斜杠,那么是将src目录复制到dest中,包含了src目录,否则是把src目录下的文件同步到dest中,不包含src目录。

退出移动版