我正在尝试使用 rsync 对我的用户进行快照备份,基本用户文件夹有大量我对备份不感兴趣的隐藏文件和配置,但是我对它的子目录中的隐藏文件夹感兴趣。
这是布局
Source Directory
/Base
.ignore
.ignore2
.ignore3
/dir1
.keep
normalfiles
/dir2
.keep
normalfiles
Desired Backup Directory
/Backup
/dir1
.keep
normalfiles
/dir2
.keep
normalfiles
如何忽略第一个隐藏文件和目录,同时将它们保留在子目录中。
解决方案
rsync -vrn --exclude="/.*" base/ base2/
通过/
在文件匹配之前指定,/.*
我设法实现了我所追求的。我发现这在对我家中的某些 mac 进行快照备份时非常有用。他们倾向于在我的备份不需要的每个用户的根文件夹中存储大量配置信息。
我自己的项目配置和 rc 的隐藏文件被保存,因为它们没有存储在根目录中。