s3cmd sync将两个桶移动到一个桶中

时间:2015-11-19 12:29:29

标签: s3cmd

我尝试使用sync命令执行此操作,但它尝试从目标存储桶中删除不在源存储桶中的文件。如何使用s3cmd将两个桶移动到一个桶中?

情况是我设置了我们会使用多个存储桶的想法,但是客户端希望使用单个存储桶来存储所有文件。

当我尝试使用--skip-existing标记它6559 files at destination to delete时,这让我感到恐慌,所以我只是CTRL-C'脚本。我再次重新同步了第一个桶以确定并且它说要删除13个目标文件,但是当我去桶时他们仍然在那里。是否可以安全地假设skip existing会阻止它从远程存储桶中删除源存储桶中不存在的文件?

1 个答案:

答案 0 :(得分:0)

感谢来自github的@fviard来回答我的问题。这里复制的是我收到的答案:

  

默认情况下,同步不会删除目的地中不存在的文件   来源。它可以告诉你在摘要中,但它不会这样做   它。检查您是否具有以下配置:delete_after =   假delete_after_fetch = False delete_removed = False和你   不要在命令行上使用选项,例如" - 删除删除"。

     

顺便说一句,你不需要在分开的命令中做事。没有   " skip-existing",你可以这样做:同步   s3:// source1 / s3:// source2 / s3:// source3 / s3:// mydestination /

<强> TLDR;它只会删除文件,如果您在配置中将其配置为这样做。否则可以忽略警告信息。