类似这样的 rsync 命令rsync -av -e "ssh" --include="dir1" --include="dir2" --include="dir3" --include="file1" --include="file2" --include="file3" --exclude="*" user@server:/directory1/site/ /dir1
不会递归复制文件。换句话说,只会复制 /directory1/site 目录中的文件和非常规文件,而不会复制其文件夹中的文件。
答案1
INCLUDE/EXCLUDE PATTERN RULES
rsync的包含/排除很奇怪。我强烈建议你花点时间仔细阅读手册页. 密切关注所有规则,因为有些事情根本就不会以看似明显的方式发挥作用。
a trailing "dir_name/***" will match both the directory (as if
"dir_name/" had been specified) and everything in the directory
(as if "dir_name/**" had been specified). This behavior was added
in version 2.6.7.
因此,如果您想要目录的全部内容,则可以用--include="dir3/***"
而不是--include="dir3"
。