使用perl列出AmazonS3中的所有对象
我正在使用Perl脚本从AmazonS3中删除早于某个时间段的对象/文件。但问题是Perl模块Amazon::S3只显示1000个对象。我在亚马逊的账户中现在有18000多个对象,我从来没有超过前1000个。有没有办法列出所有18000个对象 用于列出1000个对象的代码如下:使用perl列出AmazonS3中的所有对象,perl,amazon-s3,Perl,Amazon S3,我正在使用Perl脚本从AmazonS3中删除早于某个时间段的对象/文件。但问题是Perl模块Amazon::S3只显示1000个对象。我在亚马逊的账户中现在有18000多个对象,我从来没有超过前1000个。有没有办法列出所有18000个对象 用于列出1000个对象的代码如下: my $bucket = $s3->bucket("<bucket_name>"); $response = $bucket->list or die $s3->err . ": "
my $bucket = $s3->bucket("<bucket_name>");
$response = $bucket->list or die $s3->err . ": " . $s3->errstr;
print $response->{bucket}."\n";
# This for loop lists only 1000 objects:
for my $key (@{ $response->{keys} })
{
#print "\t".$key->{key}."\n";
#delete key from bucket
$bucket->delete_key($key->{key});
}
my$bucket=$s3->bucket(“”);
$response=$bucket->list或die$s3->err。": " . $s3->errstr;
打印$response->{bucket}.\n”;
#此for循环仅列出1000个对象:
对于我的$key(@{$response->{keys})
{
#打印“\t”。$key->{key}.\n”;
#从存储桶中删除密钥
$bucket->delete_key($key->{key});
}
您可以试试
my $response = $bucket->list_all;
从
列出所有内容
列出此存储桶中的所有密钥,而无需担心“标记器”。这可能会向引擎盖下的S3发出多个请求。
有关此方法的文档,请参阅Amazon::S3中的“list_bucket_all”
你可以试试
my $response = $bucket->list_all;
从
列出所有内容
列出此存储桶中的所有密钥,而无需担心“标记器”。这可能会向引擎盖下的S3发出多个请求。
有关此方法的文档,请参阅Amazon::S3中的“list_bucket_all”
默认情况下,AmazonS3会响应前1000个文件。 取最后一个文件名并将其作为标记传递,以显示接下来的1000个文件
$s3->list_bucket({bucket=>“bucketname”,marker=>“directory/last_file”})代码>默认情况下,AmazonS3会响应前1000个文件。
取最后一个文件名并将其作为标记传递,以显示接下来的1000个文件
$s3->list_bucket({bucket=>“bucketname”,marker=>“directory/last_file”})代码>