Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 下载整个S3存储桶?_Amazon Web Services_Amazon S3_Aws Cli - Fatal编程技术网

Amazon web services 下载整个S3存储桶?

Amazon web services 下载整个S3存储桶?,amazon-web-services,amazon-s3,aws-cli,Amazon Web Services,Amazon S3,Aws Cli,我注意到似乎没有从AWS管理控制台下载整个S3存储桶的选项 有没有一种简单的方法把所有东西都放在我的桶里?我在考虑将根文件夹公开,使用wget获取所有内容,然后再次将其私有化,但我不知道是否有更简单的方法。我已经对S3进行了一些开发,但我还没有找到下载整个存储桶的简单方法 如果您想用Java编写代码,可以很容易地使用lib创建一个bucket列表,并迭代该列表以下载它们 首先,从AWS管理顾问处获取一个公私密钥集,以便您可以创建一个S3service对象: AWSCredentials awsC

我注意到似乎没有从AWS管理控制台下载整个S3存储桶的选项


有没有一种简单的方法把所有东西都放在我的桶里?我在考虑将根文件夹公开,使用
wget
获取所有内容,然后再次将其私有化,但我不知道是否有更简单的方法。

我已经对S3进行了一些开发,但我还没有找到下载整个存储桶的简单方法

如果您想用Java编写代码,可以很容易地使用lib创建一个bucket列表,并迭代该列表以下载它们

首先,从AWS管理顾问处获取一个公私密钥集,以便您可以创建一个S3service对象:

AWSCredentials awsCredentials = new AWSCredentials(YourAccessKey, YourAwsSecretKey);
s3Service = new RestS3Service(awsCredentials);
然后,获取bucket对象的数组:

S3Object[] objects = s3Service.listObjects(YourBucketNameString);
最后,迭代该数组,一次下载一个对象,方法是:

S3Object obj = s3Service.getObject(bucket, fileName);
            file = obj.getDataInputStream();
我将连接代码放在线程安全的单例中。出于明显的原因,省略了必要的try/catch语法

如果您希望用Python编写代码,可以使用Boto


在浏览了BucketExplorer之后,“可以做你想做的事。

我已经为S3做了一些开发,但我还没有找到一种简单的方法来下载整个bucket

如果您想用Java编写代码,可以很容易地使用lib创建一个bucket列表,并迭代该列表以下载它们

首先,从AWS管理顾问处获取一个公私密钥集,以便您可以创建一个S3service对象:

AWSCredentials awsCredentials = new AWSCredentials(YourAccessKey, YourAwsSecretKey);
s3Service = new RestS3Service(awsCredentials);
然后,获取bucket对象的数组:

S3Object[] objects = s3Service.listObjects(YourBucketNameString);
最后,迭代该数组,一次下载一个对象,方法是:

S3Object obj = s3Service.getObject(bucket, fileName);
            file = obj.getDataInputStream();
我将连接代码放在线程安全的单例中。出于明显的原因,省略了必要的try/catch语法

如果您希望用Python编写代码,可以使用Boto

查看BucketExplorer后,“可以做你想做的事。

你可以使用下载你的bucket:

s3cmd --configure
s3cmd sync s3://bucketnamehere/folder /destination/folder

你可以使用另一个工具,叫做。这是Rclone文档中的代码示例:

rclone sync /home/local/directory remote:bucket
您可以使用下载您的存储桶:

s3cmd --configure
s3cmd sync s3://bucketnamehere/folder /destination/folder

你可以使用另一个工具,叫做。这是Rclone文档中的代码示例:

rclone sync /home/local/directory remote:bucket

如果您将Firefox与S3Fox一起使用,则可以选择所有文件(shift选择第一个和最后一个),然后右键单击并下载所有文件。。。我已经处理了500多个文件,没有问题

如果您将Firefox与S3Fox一起使用,那么您可以选择所有文件(按住shift键选择第一个和最后一个),然后右键单击并下载所有文件。。。我已经用500多个文件完成了这项工作,没有任何问题

我使用了几种不同的方法将Amazon S3数据复制到本地机器,包括
s3cmd
,到目前为止,最简单的方法是

您只需输入您的Amazon凭据,并使用简单的界面下载、上载、同步任何存储桶、文件夹或文件


我使用了几种不同的方法将Amazon S3数据复制到本地机器,包括
s3cmd
,到目前为止最简单的方法是

您只需输入您的Amazon凭据,并使用简单的界面下载、上载、同步任何存储桶、文件夹或文件

对于Windows,这是我找到的最简单的方法。这是一款非常优秀的软件,对于非商业用途是免费的。

对于Windows,这是我找到的最简单的方法。这是一款优秀的软件,可免费用于非商业用途。

AWS CLI 有关详细信息,请参阅“”

AWS最近发布了他们的命令行工具,其工作原理与boto非常相似,可以使用

sudo easy_install awscli

安装后,您只需运行:

aws s3 sync s3://<source_bucket> <local_destination>
mybucket
中的所有对象下载到当前目录

并将输出:

download: s3://mybucket/test.txt to test.txt
download: s3://mybucket/test2.txt to test2.txt
这将使用单向同步下载您的所有文件。除非您指定,否则它不会删除当前目录中的任何现有文件,也不会更改或删除S3上的任何文件

您还可以执行S3 bucket到S3 bucket的同步,或本地到S3 bucket的同步

看看这本书

虽然上面的示例是如何下载完整的bucket,但您也可以通过执行

aws s3 cp s3://BUCKETNAME/PATH/TO/FOLDER LocalFolderName --recursive
这将指示CLI在
BUCKETNAME
bucket中的
PATH/to/folder
目录中递归下载所有文件和文件夹密钥

AWS CLI 有关详细信息,请参阅“”

AWS最近发布了他们的命令行工具,其工作原理与boto非常相似,可以使用

sudo easy_install awscli

安装后,您只需运行:

aws s3 sync s3://<source_bucket> <local_destination>
mybucket
中的所有对象下载到当前目录

并将输出:

download: s3://mybucket/test.txt to test.txt
download: s3://mybucket/test2.txt to test2.txt
这将使用单向同步下载您的所有文件。除非您指定,否则它不会删除当前目录中的任何现有文件,也不会更改或删除S3上的任何文件

您还可以执行S3 bucket到S3 bucket的同步,或本地到S3 bucket的同步

看看这本书

虽然上面的示例是如何下载完整的bucket,但您也可以通过执行

aws s3 cp s3://BUCKETNAME/PATH/TO/FOLDER LocalFolderName --recursive

这将指示CLI在
BUCKETNAME
bucket中的
PATH/to/folder
目录中递归下载所有文件和文件夹密钥

另一个可以帮助某些OS X用户的选项是传输


这是一个FTP程序,也可以让你连接到S3文件。此外,它还可以选择将任何FTP或S3存储装载为Finder中的文件夹,但这只适用于有限的时间。

另一个可以帮助某些OS X用户的选项是传输


这是一个FTP程序,也可以让你连接到S3文件。而且,它还可以选择将任何FTP或S3存储装载为Finder中的文件夹,但这只适用于有限的时间。

在Windows中,我首选的GUI工具是Cloudberry Explorer for S3。有一个相当完善的文件资源管理器,类似ftp的界面。

在Windows中,我首选的GUI工具是Cloudberry explorer for S3。有一个相当好的政策
aws s3 sync s3://source-bucket/source-path s3://destination-bucket/destination-path
aws s3 sync s3://source-bucket/source-path c:\my\local\data\path
s3cmd get --recursive --continue s3://test-bucket local-directory/
aws configure
aws s3 sync <source> <destination>
aws s3 sync <S3Uri> <LocalPath>
aws s3 sync <LocalPath> <S3Uri>
aws s3 sync <S3Uri> <S3Uri> 
aws s3 sync s3://bucket-name .
aws s3 sync . s3://bucket-name
aws s3 presign s3://<your_bucket_name/>
aws s3 sync . s3://BucketName
aws s3 sync s3://BucketName . 
apt install s4cmd
pip install s4cmd
s4cmd [--access-key=ACCESS_KEY --secret-key=SECRET_KEY] sync s3://<your-bucket> /some/local/dir
aws s3 sync s3://bucketname/ .