rsync仅复制特定文件夹

时间:2009-07-15 14:14:36

标签: linux rsync

我有一个文件和dirs的目录。我想要的是从该目录制作几个文件夹的rsync副本。例如,假设我有这个:

/home/user
-- drwxr-xr-x  folderA
-- drwxr-xr-x  folderB
-- drwxr-xr-x  folderC
-- -rw-r--r--  file.1
-- -rw-r--r--  file.2

我想使用rsync复制folderA和folerB。我创建了文件rsync_folders.txt

+ /folderA/**
+ /folderB/**

我的问题是rsync将始终复制文件,除非它匹配排除模式。但是,如果我添加

- /**

没有任何内容被复制,因为rsync首先匹配排除模式。

有什么想法吗?

注意:我无法列出要排除的所有文件夹和文件。它会不时发生变化。

1 个答案:

答案 0 :(得分:14)

使用rsync -av src1 src2 src3 ... dst或将所有想要rsync的文件夹放在文本文件中(每个文件夹在一个单独的行中)并使用rsync -arv --files-from=sources.txt dst
请注意,默认情况下-a隐含--recursive,但在使用--files-from时则不然,因此在这种情况下必须明确指定-r