我注意到似乎没有从AWS管理控制台下载整个s3桶的选项。
有什么简单的方法可以把所有东西都装进我的桶里吗?我正在考虑使根文件夹公共,使用wget抓取它,然后再次使它私有,但我不知道是否有更简单的方法。
我注意到似乎没有从AWS管理控制台下载整个s3桶的选项。
有什么简单的方法可以把所有东西都装进我的桶里吗?我正在考虑使根文件夹公共,使用wget抓取它,然后再次使它私有,但我不知道是否有更简单的方法。
当前回答
为了添加另一个GUI选项,我们使用了WinSCP的S3功能。它非常容易连接,只需要你的访问密钥和密钥在用户界面。然后,您可以从任何可访问的存储桶中浏览和下载所需的任何文件,包括嵌套文件夹的递归下载。
由于通过安全检查新软件可能是一个挑战,而且WinSCP相当普遍,因此使用它而不是尝试安装更专业的实用程序会非常有益。
其他回答
为了添加另一个GUI选项,我们使用了WinSCP的S3功能。它非常容易连接,只需要你的访问密钥和密钥在用户界面。然后,您可以从任何可访问的存储桶中浏览和下载所需的任何文件,包括嵌套文件夹的递归下载。
由于通过安全检查新软件可能是一个挑战,而且WinSCP相当普遍,因此使用它而不是尝试安装更专业的实用程序会非常有益。
正如Neel Bhaat在这篇博客中解释的那样,有许多不同的工具可以用于此目的。有些是AWS提供的,大多数是第三方工具。所有这些工具都要求您将AWS帐户密钥和秘密保存在工具本身。在使用第三方工具时要非常谨慎,因为你保存的凭证可能会让你失去全部价值,让你完蛋。
因此,我总是建议为此使用AWS CLI。您可以从这个链接简单地安装它。接下来,运行以下命令并在AWS CLI中保存密钥和秘密值。
aws configure
并使用以下命令将AWS S3 Bucket同步到本地计算机。(本地机器应该安装了AWS CLI)
aws s3 sync <source> <destination>
例子:
1)用于AWS S3到本地存储
aws s3 sync <S3Uri> <LocalPath>
2)从本地存储到AWS S3
aws s3 sync <LocalPath> <S3Uri>
3)从AWS s3桶到另一个桶
aws s3 sync <S3Uri> <S3Uri>
使用AWS S3 CLI下载:
aws s3 cp s3://WholeBucket LocalFolder --recursive
aws s3 cp s3://Bucket/Folder LocalFolder --recursive
要使用代码下载,请使用AWS SDK。
要使用GUI下载,请使用Cyberduck。
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。
使用awscli下载/上传文件到s3总是更好。同步将帮助您恢复没有任何麻烦。
aws s3 sync s3://bucketname/ .