我有一个本地目录,我想将其与 S3 存储桶同步。我有两个具体要求:
- 如果本地文件与远程相同,则不要将其重新传输到存储桶。
- 如果某些文件或目录存在于存储桶中但本地不存在,则删除它们。基本上,存储桶应该镜像本地副本,而不是反之亦然。
我查看了s3cmd sync
命令,但不幸的是要求 2 没有得到满足。如果文件存在于存储桶中但不在本地副本中,则它们将被复制到本地而不是被删除。
答案1
我最终通过进一步查阅 s3cmd 手册找到了答案。事实证明,有一些选项可以改变命令的行为。其中一个选项是按照我想要的方式--delete-removed
改变的:sync
--删除
Delete remote objects with no corresponding local file [sync]