检查Amazon S3存储桶中是否存在具有特定前缀的密钥

时间:2012-03-04 00:56:48

标签: amazon-s3

我如何检查是否有以特定前缀开头的密钥,类似于“文件夹”?

3 个答案:

答案 0 :(得分:4)

The docs表示在询问存储桶中的密钥列表时可以指定prefix参数。您可以将max-keys参数设置为1以获得速度。如果列表非空,则表示前缀存在。

boto's bucket.list() function这样的工具也会公开前缀和分页。

答案 1 :(得分:2)

要遍历ruby中以'some / prefix /'开头的存储桶中的所有S3文件,请使用aws-sdk gem执行以下操作:

AWS.config :access_key_id => "foo", :secret_access_key => "bar"
s3 = AWS::S3.new
s3.buckets['com.mydomain.mybucket'].objects.with_prefix('some/prefix/').each do |object|
    # Do something with object (an S3 object)
end

答案 2 :(得分:0)

必填:aws-java-sdk个罐子

credentials = new BasicAWSCredentials(accessKey, secretKey);
config = new ClientConfiguration();
client = new AmazonS3Client(credentials, config );
client.doesBucketExist(bucketName+"/prefix");