rsync:将所有文件同步到单个目录,忽略目录结构

时间:2016-05-07 22:46:56

标签: linux unix centos synchronization rsync

我想将所有文件同步到某个目录而不同步目录结构。

到目前为止,我有这个:

rsync -vcr --remove-source-files --exclude='*sample*' --exclude='*Sample*' --include='*/' --include='*.avi' --include='*.mkv' --include='*.mp4' --include='*.wmv' --exclude='*' $src1 $src2 $dest

这似乎工作得相当好,但是如果其中一个包含的文件类型位于源目录的子目录中,那么父目录也将被传输。

总而言之,我希望将所有包含的文件类型直接移动到单个目标目录,而不复制父目录结构。

1 个答案:

答案 0 :(得分:0)

您的命令中似乎有一个额外的--include='*/不需要,并导致您遇到的问题。你应该选择以下内容:

修改

我们还会删除可能多余的--exclude='*',因为我们会将include用于相关文件。

rsync -vcr --remove-source-files --exclude='*sample*' --exclude='*Sample*'        \
      --include='*.avi' --include='*.mkv' --include='*.mp4' --include='*.wmv'     \
      $src1 $src2 $dest

希望它有所帮助。