#!/bin/sh set -e BUCKET="$1" ; shift BATCH_SIZE=100 aws s3api list-object-versions --bucket "$BUCKET" | jq '[.Versions[] | select(.IsLatest == false) | {Key, VersionId}]' | jq -c "_nwise($BATCH_SIZE) | {Objects:., Quiet:false}" | tr '\n' '\0' | xargs -0 -n1 aws s3api delete-objects --bucket "$BUCKET" --delete