rsync:仅在一个目录中排除特定文件类型
问题描述:
我使用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
选项,但没有运气。
答
rsync的手册说
INCLUDE/EXCLUDE PATTERN RULES
...
o use ’**’ to match anything, including slashes.
所以你可以做
rsync -a --exclude='Folder2/**.tar' Source/ Target
注意,这是比庆典的globstar选项,你会用Folder/**/*.tar
不同。
+0
完美的作品。谢谢。 – noes
玩弄排除一些。 – 123