Skip to content

Instantly share code, notes, and snippets.

@yakovsh
Last active January 17, 2016 15:59
Show Gist options
  • Save yakovsh/74712ca1350a29820a74 to your computer and use it in GitHub Desktop.
Save yakovsh/74712ca1350a29820a74 to your computer and use it in GitHub Desktop.
Deleting Amazon S3 Bucket with A Lot of Files
#!/usr/bin/perl
#
# 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
#
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;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment