rsync仅复制特定文件夹

Geo*_*uba 11 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
Run Code Online (Sandbox Code Playgroud)

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

+ /folderA/**
+ /folderB/**
Run Code Online (Sandbox Code Playgroud)

我的问题是rsync将始终复制文件,除非它匹配排除模式.但如果我补充一下

- /**
Run Code Online (Sandbox Code Playgroud)

没有被复制,因为rsync首先匹配排除模式.

有任何想法吗?

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

drr*_*lvn 14

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