在不同端点URL上的s3存储桶之间复制对象

时间:2020-08-12 07:46:30

标签: amazon-s3 aws-cli

我正在尝试从s3://open-images-dataset存储桶中复制对象。我可以使用以下命令在本地下载它。

aws s3 --no-sign-request cp s3://open-images-dataset/tar/train_0.tar.gz ./

以上命令将tar文件下载到我的本地目录中。 从那里,我将这个文件上传到另一个s3存储桶mybucket。那是我组织的内部s3存储桶。因此,连接和访问该存储桶需要使用不同组的访问密钥/ ID和端点URL。因此,一旦下载完成,我将拥有另一个连接到mybucket的脚本并上传下载的对象。

我在想,是否有一种方法可以消除此跃点并将对象直接从源存储区s3://open-images-dataset复制到mybucket。由于我本地没有那么多磁盘空间,因此遇到了空间问题。我尝试了以下命令,但没有运气,可能我缺少了一些东西:

aws s3 --no-sign-request cp s3://open-images-dataset/tar/train_0.tar.gz s3://mybucket --endpoint-url https://myendpointurl

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

通过在命令末尾提供参数来尝试此操作。 另外,如果要将所有数据从bucket1复制到bucket2,请使用 sync 而不是cp。

aws s3 cp s3://dataBucket/test.txt s3://mybucket/test2.txt --no-sign-request

同步:

aws s3 sync s3://mybucket s3://mybucket2