基于中间目录名称的 rsync 过滤器

基于中间目录名称的 rsync 过滤器

我想使用 rsync 复制/SRC/**/OK/**/*OK*文件 /DEST/**/OK/**/*OK*

对于要复制的所有文件,必须有一个OK以完整路径命名且OK文件名中命名的文件夹。

我试过

rsync -avP --include='**/OK/**/*OK*' --include='*/' --exclude='*' --inplace SRC DEST

这不起作用。

rsync -avP --include='*OK*' --include='*/' --exclude='*' --inplace SRC DEST

有效,但它会创建所有文件夹,无论它们是否包含OK在完整路径中。

答案1

rsync -am --include='**/OK/**/*OK*' --include='*/' --exclude='*' --delete-excluded SRS DEST

试试这个。-m 删除在遍历 SRS 子目录时创建的“空”目录,--delete-excluded 使同步看起来不像CP

相关内容