排除除一个目录树外的所有内容的Rsync

7

我有一个目录结构,其中包含可变数量的子目录和文件。我想排除除了1个子目录树之外的所有内容。

我已经尝试过

rsync -a --include 'wanted_dir' --exclude '*' 1/ 2/

但它只返回了wanted_dir目录(没有其中的文件)。


你的问题不够明确,请更加详细和清晰地解释。 - Abadis
2个回答

7
为了包含目录中的所有文件,请添加三个星号:
rsync -a --include 'wanted_dir/***' --exclude '*' 1/ 2/

1
由于某种原因,我使用cygwin从Linux框架同步到Windows工作站时,我不得不在排除列表中添加三个星号,以使其排除所有文件,除了tar文件。谢谢。 rsync -a --include'*.tar'--exclude'***'r@lin:/dir local/dir - ndasusers

1

把它添加到包含目录中不是更合理吗?

rsync -a --include 'wanted_dir/1/'

你的代码中发生了什么事情,需要包含根目录?


2
我用以下命令得到了我想要的结果:rsync -av 1/wanted_dir 2/ - user1751044

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接