我想同步/Volumes/B/中的所有内容,除了我想全局排除的缓存目录。另外,我不想 rsync 任何其他/Volume/
我有以下排除文件:
+ /Volumes/B/***
- Cache/
- /Volumes/*
第一行和第三行似乎工作正常,除了 rsync 还获取/Volumes/B/... (
/Volumes/B/***/Cache/
) 下的所有缓存目录我错过了什么?
最佳答案
rsync 在遍历目录时自上而下读取排除文件。
当它访问缓存目录时,rsync 对第一个匹配模式起作用。
第一个匹配模式是“+/Volumes/B/*”,因此包含了缓存。
规则是:
当有特定的子目录时,把它们放在第一位。
Here是一个简单的分步说明。
关于rsync - 使用 RSYNC,包含和排除如何组合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7960669/