S3 버킷을 대화식으로 쉽게 삭제

3844 단어 S3AWS

소개



객체가 들어있는 S3 버킷을 AWSCLI를 사용하여 대화식으로 삭제하는 방법입니다.

S3 삭제 명령은



의외로 검토 단계이거나 AWS 서비스 사용하면 자동으로 만들어져, 아, 지우고 싶다고 생각할 수 있습니다. 있어요.
그리고, 과연 GUI는 귀찮아서, CLI로 치지만, 무엇이 귀찮게 하고, 버킷의 이름은 일의로 하지 않으면 안 되므로, 매우 긴 것 같고, 커맨드 치는 것이 귀찮아. 라고 할까 잘 잘못해서, 그런 버킷 없어, 라고 말해 좌절한다.
# バケットを探す
aws s3 ls

# バケットを消す
aws s3 rb aaaabbbbccccdddd-backet --force

아-, 바켓이 아니고, bucket 이었다-같다.

해결책



대화식으로 지울 수 있습니다.
그렇다면 여기 을 사용하겠습니다.

아래 준비로 seentaku를 설치.
brew tap rcmdnk/rcmdnkpac
brew install sentaku

아래 스크립트를 준비.
개인적으로는 이런 올레올레스크립트를 어딘가에 정리해 두고, 환경변수의 PATH에 추가해 두면 언제라도 사용할 수 있어 편리하기 때문에 그것을 추천한다. 하고 있는 일은 간단하고, s3의 리스트를 취득해, 선택한 버킷을 살짝 지워버리는 것. (사라지므로 사용법에는 주의를 ··책임은 지지 않습니다.)

rm_bucket
#!/bin/bash

STR=`aws s3 ls | sentaku -s $'\n'`
ARR=(${STR// / })
BUCKET=${ARR[2]}
BUCKET=`echo ${BUCKET} | tr -d '\n'`

if [ -z ${BUCKET} ]; then
    echo "Error: Cannot find bucket name."
    exit
fi

read -p "delete ${BUCKET}? (y/N): " yn
if [[ $yn = [yY] ]]; then
    echo "s3://${BUCKET}"
    aws s3 rb s3://${BUCKET} --force
else
    echo "Abort."
fi

사용해보기



이런 식으로 사용할 수 있습니다.
$ rm_bucket

실행하면 아래와 같은 S3 버킷 목록이 표시됩니다.


버킷을 선택하고 Enter를 누르면 확인 메시지가 표시되고 y를 치면 그대로 강제로 지울 수 있습니다.
delete example-example-2? (y/N): y
s3://example-example-2
remove_bucket: example-example-2

 정리



편안! 편안하다!
하지만 --force로 지우므로 조심해서 사용하십시오.

(기존 버킷명을 Intellisense라든지 할 수 있다면, 그 쪽이 쾌적한 생각이 든다··)

좋은 웹페이지 즐겨찾기