rsync使用--delete但不想删除目的地的符号链接

Dia*_*nds 5 symlink rsync

使用rsync,我的源目录有许多文件和目录.我的目标已经同步,因此它会镜像这些文件和目录.

但是,我已在我的目标中手动创建了一个在我的源中不存在的符号链接.

我需要在rsync中使用--delete操作.有没有办法让rsync不删除符号链接?

Len*_*sch 5

没有办法按照您建议的方式实现这一点,但解决所描述问题的最简单方法就是将符号链接的文件名添加到 rsync 排除模式

like: --exclude="folder/symlinkname1" --exclude="folder/symlinkname2"
Run Code Online (Sandbox Code Playgroud)

如果有很多符号链接,您可以在排除模式文件中保留它们的列表,该文件可能由一个小脚本或 bash one liner 自动生成...


Cor*_*tup -2

您的目标现有符号链接是否指向目录或文件?如果是目录,您也许可以使用--keep-dirlinks.