Skip to content

Instantly share code, notes, and snippets.

@mryhryki
Last active July 23, 2021 00:59
Show Gist options
  • Save mryhryki/d9f2cabadcf3bdf88ded5d67db9c6cac to your computer and use it in GitHub Desktop.
Save mryhryki/d9f2cabadcf3bdf88ded5d67db9c6cac to your computer and use it in GitHub Desktop.
#!/usr/bin/env bash
set -e
TEMP_DIR="${HOME}/s3sync"
S3_BUCKET="mryhryki-test-bucket"
function list(){
cat <<EOS
s3/key.ext
EOS
}
function restore_object(){
local bucket="$1"
local key="$2"
aws2 s3api restore-object \
--bucket "${bucket}" \
--key "${key}" \
--restore-request '{"Days":7,"GlacierJobParameters":{"Tier":"Bulk"}}'
}
function download(){
local bucket="$1"
local key="$2"
local absolute_path="${TEMP_DIR}/${key}"
mkdir -p "$(dirname "${absolute_path}")"
aws2 s3 cp "s3://${S3_BUCKET}/${key}" "${absolute_path}"
}
function delete() {
local bucket="$1"
local key="$2"
local version="$3"
if [[ "${version}" == "" ]]; then
aws2 s3api delete-object --bucket "${bucket}" --key "${key}"
else
aws2 s3api delete-object --bucket "${bucket}" --key "${key}" --version-id "${version}"
fi
}
list | while read LINE; do
KEY="$(echo "${LINE}" | cut -f 1)"
VERSION="$(echo "${LINE}" | cut -f 2)"
echo "KEY: ${KEY}, VERSION: ${VERSION}"
# delete "${S3_BUCKET}" "${KEY}" "${VERSION}"
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment