s3의경우 직접적으로 다운로드 하는 방법은 없다 . 따라서 MAC의 경우를 기준으로 CLI를 설치해서 데이터를 다운로드 및 접근하는 방법이 CLI 이다
1. macOS에서 AWS CLI 버전 2 패키지 설치
https://docs.aws.amazon.com/ko_kr/cli/latest/userguide/install-cliv2-mac.html
그리고 IAM 정책에서 S3에 접근할 수 있는 접근 권한을 설정하고 엑세스키와 비밀 엑세스 키를 발급받는다. 한번 발급 받으면 메모하거나 CSV파일로 꼭 저장해놓도록한다.
Brew CLI Install
# AWS CLI 설치
brew install awscli
# 설치 후 AWS CLI 를 통한 IAM 설정
aws configure
# IAM 설정 확인
AWS config 및 credential 확인
cat ~/.aws/config
cat ~/.aws/credentials
aws-cli: AWS Command Line Interface
마지막으로 아래 명령어를 통해 FileZila 또는 FTP 처럼 데이터를 업로드하거나 다운로드 한다
reference:
버킷 생성
$ aws s3 mb s3://{bucket-name}
버킷 리스트 조회
$ aws s3 ls
버킷으로 로컬 파일 복사
$ aws s3 cp {local-file-name} s3://{bucket-name}
- -recursive 옵션 사용시 하위 파일들도 모두 복사
버킷 간 파일 복사
$ aws s3 cp s3://{source-bucket-name}/{file-name} s3://{destination-bucket-name}
- -recursive 옵션 사용시 하위 파일들도 모두 복사
버킷으로 로컬 폴더 이동
$ aws s3 mv {local-folder-name} s3://{bucket-name}
- -recursive 옵션 사용시 하위 파일들도 모두 이동
버킷으로 로컬 파일 이동
$ aws s3 mv {local-file-name} s3://{bucket-name}
버킷 간 파일 이동
$ aws s3 mv s3://{source-bucket-name}/{file-name} s3://{destination-bucket-name}
- -recursive 옵션 사용시 하위 파일들도 모두 이동
버킷 이동 (or Rename)
$ aws s3 mv s3://{source-bucket-name} s3://{destination-bucket-name}
- -recursive 옵션 사용시 하위 파일들도 모두 이동
- -recursive 옵션 적용 및 이동 후 {source-bucket-name}은 버킷 리스트에서 사라지는 것을 확인하였음. rename을 이 방식으로 하면 될 듯함
버킷 내 파일 리스트 조회
$ aws s3 ls s3://{bucket-name}
버킷 삭제
$ aws s3 rm s3://{bucket-name}
- -recursive 옵션 사용시 하위 파일들도 모두 삭제
버킷 내 파일 삭제
$ aws s3 rm s3://{bucket-name}/{file-name}
버킷으로 로컬 파일 또는 폴더 recursive하게 복사 (동기화)
$ aws s3 sync {local-directory} s3://{bucket-name}
버킷 간 동기화
$ aws s3 sync s3://{source-bucket-name} s3://{destination-bucket-name}