假设我有两个文件夹A/
和B
,其中包含以下内容:
$ ls A/
main.tex
main.log
main.pdf
$ ls B/
project.tex
project.log
project.pdf
进一步假设该文件夹B/
仅存在于远程端(A/
两侧都存在)。rsync
使用该选项运行将从远程端--delete
删除文件夹。B/
但现在假设我使用rsync
with --exclude *.log
: 那么该文件B/project.log
将不会被删除,因此我会收到如下消息:
cannot delete non-empty directory: B
一种解决方案当然是使用--delete-excluded
--- 但这需要该文件A/main.log
将在同步时被删除。有没有解决的办法?换句话说,有没有办法rsync
删除远程端的文件夹(仅存在),当其唯一内容是排除文件时?
预先感谢您的帮助。
PS:这不仅仅是一个“学术”示例,这实际上影响了我在台式机和笔记本电脑之间保持同步的方式......