Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.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 AWS CLI:将特定数量的文件从每个bucket复制到本地_Amazon Web Services_Aws Cli - Fatal编程技术网

Amazon web services AWS CLI:将特定数量的文件从每个bucket复制到本地

Amazon web services AWS CLI:将特定数量的文件从每个bucket复制到本地,amazon-web-services,aws-cli,Amazon Web Services,Aws Cli,我试图从每个bucket下载前10个文件(仅举个例子)。 我是新手,我已经阅读了aws cli的文档,但找不到任何关于这方面的信息。awscli有两套广泛的S3函数:aws S3和aws s3api。前者是更高级别的(例如,它包括同步功能),而较低级别则与底层S3API紧密对应 您可以编写一个简单的解决方案脚本,该解决方案使用aws s3api列表对象--max items 10从bucket中获取最多10个对象的列表,然后逐个复制它们。没有一个命令可以做到这一点 但是,可以将多个AWS CLI

我试图从每个bucket下载前10个文件(仅举个例子)。
我是新手,我已经阅读了aws cli的文档,但找不到任何关于这方面的信息。

awscli有两套广泛的S3函数:
aws S3
aws s3api
。前者是更高级别的(例如,它包括同步功能),而较低级别则与底层S3API紧密对应


您可以编写一个简单的解决方案脚本,该解决方案使用aws s3api列表对象--max items 10从bucket中获取最多10个对象的列表,然后逐个复制它们。

没有一个命令可以做到这一点

但是,可以将多个AWS CLI命令组合在一起

例如,这些命令将列出前10个对象:

用于$中的bucket(aws s3api列出bucket——查询bucket[].[Name]——输出文本);
做
回声桶:$Bucket;
aws s3api列表对象——查询内容[0:10]。[Key]——bucket$bucket——输出文本;
完成;
首先,它获得一个bucket列表,然后为每个bucket列出前10个文件的名称

您可以通过添加另一个
for
来修改if,该函数将调用
aws s3 cp
,文件名为下载对象


你也应该考虑一下你想做的关于冲突文件名的事情(例如,如果一个文件中有相同的名字出现在一个以上的桶中的前10个文件中),你可能会发现使用一个类似于LIB的BOTO3来列出前10个文件并下载它们。