rsync-排除目录但包含其中的文件

rsync-排除目录但包含其中的文件

我有一个 rsync 命令,用于同步两个目录:

rsync -CurvtOlon --delete /home/source/path/ /home/dest/path/

当我运行该命令时,它会递归扫描所有源树并找到目标树中需要更新的所有文件和目录。当我删除 -n 选项并实际运行该命令时,它会按照我的预期同步所有文件和目录,但当我随后立即再次运行该命令时,它告诉我文件现在是最新的,但所有目录仍需要更新。

我要么需要了解为什么它没有正确更新目录并仍然将它们标记为过时,要么我需要一个新命令来仅比较文件而不是目录。

我想我可以尝试排除所有内容,然后仅包含我知道我需要的文件扩展名,但这似乎阻止它在目录中查找文件:

rsync -CurvtOlon --delete --include="*.txt" --exclude="*" /home/source/path/ /home/dest/path/

欢迎任何建议!

相关内容