2017-10-12 240 views
0

我使用rsync备份数据,并希望仅在一个目录(及其子目录)中排除特定文件类型。例如,我有:rsync:仅在一个目录中排除特定文件类型

$ ls Source/ 
Folder1/a.tar 
Folder1/b.dat 
Folder2/c.tar 
Folder2/d.dat 
Folder2/Subfolder3/e.tar 
Folder2/Subfolder3/f.dat 
Folder2/Subfolder3/g.pdf 

现在我想对所有文件同步除外的.tar文件文件夹2及其子文件夹。最后它应该看起来像这样:

$ ls Target/ 
Folder1/a.tar 
Folder1/b.dat 
Folder2/d.dat 
Folder2/Subfolder3/f.dat 
Folder2/Subfolder3/g.pdf 

有人知道该怎么做吗?我玩了--exclude选项,但没有运气。

+1

玩弄排除一些。 – 123

回答

1

rsync的手册说

INCLUDE/EXCLUDE PATTERN RULES 
... 
     o  use ’**’ to match anything, including slashes. 

所以你可以做

rsync -a --exclude='Folder2/**.tar' Source/ Target 

注意,这是比庆典globstar选项,你会用Folder/**/*.tar不同。

+0

完美的作品。谢谢。 – noes

相关问题