本文翻译自:Downloading an entire S3 bucket?
I noticed that there doesn't seem to be an option to download an entire S3 bucket from the AWS Management Console. 我注意到似乎没有选择从AWS管理控制台下载整个S3存储桶的选项。
Is there an easy way to grab everything in one of my buckets? 有没有一种简单的方法可以将所有东西都放在我的一个存储桶中? I was thinking about making the root folder public, using wget
to grab it all, and then making it private again but I don't know if there's an easier way. 我当时正在考虑将根文件夹设为公用,使用wget
抓取所有内容,然后再次将其设为私有,但是我不知道是否有更简单的方法。
#1楼
参考:https://stackoom.com/question/aKhS/正在下载整个S-存储桶
#2楼
如果您将Firefox与S3Fox一起使用,则可以选择所有文件(首先选择Shift和Shift),然后右键单击并下载所有文件...我已经完成了500多个文件,而没有任何问题
#3楼
I've used a few different methods to copy Amazon S3 data to a local machine, including s3cmd, and by far the easiest is Cyberduck . 我使用了几种不同的方法将Amazon S3数据复制到本地计算机(包括s3cmd),到目前为止,最简单的方法是Cyberduck 。 All you need to do is enter your Amazon credentials and use the simple interface to download / upload / sync any of your buckets / folders / files. 您需要做的就是输入您的Amazon凭证,并使用简单的界面下载/上传/同步您的所有存储桶/文件夹/文件。
#4楼
S3 Browser is the easiest way I have found. S3浏览器是我找到的最简单的方法。 It is excellent software... And it is free for non commercial use. 它是出色的软件...它是免费的非商业用途。 Windows only. 仅Windows。
http://s3browser.com/ http://s3browser.com/
#5楼
AWS CLI AWS CLI
Documentation for AWS CLI AWS CLI的文档
AWS have recently released their Command Line Tools. AWS最近发布了他们的命令行工具。 This works much like boto and can be installed using sudo easy_install awscli
or sudo pip install awscli
这就像boto一样工作,可以使用sudo easy_install awscli
或sudo pip install awscli
Once installed, you can then simply run: 安装后,您可以简单地运行:
Command : 命令 :
aws s3 sync s3://<source_bucket> <local_destination>
For example, 例如,
aws s3 sync s3://mybucket .
will download all the objects in mybucket
to the current directory. 将mybucket
中的所有对象下载到当前目录。
Output : 输出 :
download: s3://mybucket/test.txt to test.txt
download: s3://mybucket/test2.txt to test2.txt
This will download all of your files (one-way sync). 这将下载您的所有文件(单向同步)。 It will not delete any existing files in your current directory (unless you specify --delete ), and it won't change or delete any files on S3. 它将不会删除当前目录中的任何现有文件(除非您指定--delete ),并且不会更改或删除S3上的任何文件。
You can also do S3 bucket to S3 bucket, or local to S3 bucket sync. 您也可以将S3存储桶同步到S3存储桶,或在S3存储桶本地同步。
Check out the documentation and other examples: 查看文档和其他示例:
http://docs.aws.amazon.com/cli/latest/reference/s3/sync.html http://docs.aws.amazon.com/cli/latest/reference/s3/sync.html
Downloading A Folder from a Bucket 从存储桶下载文件夹
Whereas the above example is how to download a full bucket, you can also download a folder recurively by performing 尽管以上示例是如何下载完整存储桶的,但您也可以通过执行以下操作来递归下载文件夹
aws s3 cp s3://BUCKETNAME/PATH/TO/FOLDER LocalFolderName --recursive
This will instruct the CLI to download all files and folder keys recursively within the PATH/TO/FOLDER
directory within the BUCKETNAME
bucket. 这将指示CLI在BUCKETNAME
存储桶的PATH/TO/FOLDER
目录中以递归方式下载所有文件和文件夹密钥。
#6楼
Another option that could help some osx users , is transmit . 传输可以帮助某些osx用户的另一种选择。 It's an ftp program that also let you connect to your s3 files. 这是一个ftp程序,还可以让您连接到s3文件。 And it has an option to mount any ftp or s3 storage as folder in finder. 并且它可以选择将任何ftp或s3存储作为文件夹挂载在finder中。 But it's only for a limited time. 但这只是有限的时间。