我注意到似乎没有从AWS管理控制台下载整个s3桶的选项。
有什么简单的方法可以把所有东西都装进我的桶里吗?我正在考虑使根文件夹公共,使用wget抓取它,然后再次使它私有,但我不知道是否有更简单的方法。
我注意到似乎没有从AWS管理控制台下载整个s3桶的选项。
有什么简单的方法可以把所有东西都装进我的桶里吗?我正在考虑使根文件夹公共,使用wget抓取它,然后再次使它私有,但我不知道是否有更简单的方法。
当前回答
AWS CLI是在本地下载整个S3存储桶的最佳选择。
安装AWS CLI。 配置AWS CLI以使用默认的安全凭据和默认的AWS区域。 下载整个S3桶使用命令 Aws s3 sync s3://yourbucketname localpath
不同AWS服务的AWS CLI参考:AWS命令行接口
其他回答
只需要在aws s3 cp命令中传递——recursive &——include "*",如下:aws——region "${BUCKET_REGION}" s3 cp s3://${BUCKET}${BUCKET_PATH}/ ${LOCAL_PATH}/tmp——recursive——include "*" 2>&1
如果您使用Visual Studio,请下载“AWS Toolkit for Visual Studio”。
安装完成后,进入Visual Studio - AWS Explorer - S3 -您的存储桶-双击
在窗口中,您将能够选择所有文件。右键单击并下载文件。
使用awscli下载/上传文件到s3总是更好。同步将帮助您恢复没有任何麻烦。
aws s3 sync s3://bucketname/ .
正如@layke所说,从S3 cli下载文件是最好的做法,这是安全的。但在某些情况下,人们需要使用wget来下载文件,下面是解决方案
aws s3 presign s3://<your_bucket_name/>
这将presign将为您提供临时公共URL,您可以使用presign_url从S3下载内容,在您的情况下使用wget或任何其他下载客户端。
AWS SDK API是将整个文件夹和存储库上传到AWS S3以及在本地下载整个AWS S3存储桶的最佳选择。
上传整个文件夹到AWS S3: AWS S3 sync。s3: / / BucketName
本地下载整个AWS S3桶:AWS S3 sync S3://BucketName。
您还可以为AWS S3桶中的特定文件夹分配路径,如BucketName/ path。