Rsync如何包含目录而不包含文件?

问题描述 投票:20回答:3

我有一个目录结构和这样的文件

data/
data/a.txt
data/folder/
data/folder/b.txt
data/folder/folder/
data/folder/folder/c.txt
...

a.txtb.txtc.txt是计算机生成并经常更新的大文件。它们不应该被备份 - 但我想备份目录结构:

data/
data/folder/
data/folder/folder/

如何使用rsync和--exclude-from,而不指定每个文件夹,但像rsync -a data/* --exclude-from=exclude.rsync "" --onlyfoldersandnotfiles""

感谢帮助 !

linux backup rsync
3个回答
28
投票
$ rsync -a -f"+ */" -f"- *" source/ destination/

“两个-f参数分别表示”复制所有目录“,然后”不复制任何其他内容“。”

更多细节:http://psung.blogspot.com/2008/05/copying-directory-trees-with-rsync.html


20
投票
rsync -a --include='*/' --exclude='*' source/ destination/

基本上,首先包括所有目录,然后排除所有文件。


0
投票

如果要同步除一个文件夹以外的所有内容但仍希望保留该排除文件夹的目录结构,则应执行以下操作:

$ rsync -a -f"+ /var/log/**/*/" -f"- /var/log/**/*" source/ destination/

exclude-listthe rsync command为例。

© www.soinside.com 2019 - 2024. All rights reserved.