桶与本地目录的单向同步

我有一个本地目录,我想与S3存储桶进行同步。 我有两个具体要求:

  1. 如果本地文件与远程文件相同,则不要将其重新传输到存储桶。
  2. 如果某个文件或目录存在于存储桶中,但不存在于本地,请将其删除。 基本上桶应镜像本地副本,而不是反之亦然。

我看着s3cmd sync命令,但不幸的是要求2没有履行。 如果文件存在于存储桶中,但不存在于本地副本上,则会将其复制到本地而不是被删除。

我终于在s3cmd手册中find了答案。 事实certificate,有些选项会改变命令的行为。 一个选项是--delete-removed ,它以我想要的方式改变sync

–delete-删除

  Delete remote objects with no corresponding local file [sync]