Google
 

« Upgrading to Ubuntu 9.04         Turning Playlist.com into Podcasts and Playing Them on Cell Phones »

Deleting Amazon S3 Bucket with A Lot of Files

Posted May 6, 2009 – 9:28 pm by Yakov Shafranovich in Programming

Here is a short script that can mass delete files in an Amazon S3 bucket. It is limited to a 1,000 keys at a time:

#!/usr/bin/perl

use Net::Amazon::S3;

my $s3 = Net::Amazon::S3->new(
{   aws_access_key_id     => 'ACCESS_ID',
aws_secret_access_key => 'ACCESS_KEY',
retry                 => 1,
}
);

my $bucket = $s3->bucket("BUCKET") or die $s3->err . ": " . $s3->errstr;
my $response = $bucket->list or die $s3->err . ": " . $s3->errstr;

foreach my $key (@{$response->{keys}}) {
my $key_name = $key->{key};
print "Deleting '$key_name'\n";
$bucket->delete_key($key_name) or die $s3->err . ": " . $s3->errstr;
}
exit;

Permalink | Trackback URL | This post has

Post a Comment