AWS CLI를 사용하여 Amazon S3 시작하기 - Amazon Simple Storage Service

AWS CLI를 사용하여 Amazon S3 시작하기

AWS Command Line Interface(AWS CLI)를 사용하여 버킷과 객체를 활용해 Amazon S3를 시작할 수 있습니다. 버킷은 객체에 대한 컨테이너입니다. 객체는 파일과 해당 파일을 설명하는 모든 메타데이터입니다.

Amazon S3에 객체를 저장하려면 버킷을 생성한 다음 버킷에 객체를 업로드합니다. 객체가 버킷에 있으면 객체를 열고 다운로드하고 이동할 수 있습니다. 객체나 버킷이 더 이상 필요하지 않은 경우 리소스를 정리할 수 있습니다.

Amazon S3에서는 사용한 만큼만 비용을 청구하며, Amazon S3 기능 및 요금에 대한 자세한 내용은 Amazon S3를 참조하십시오. 신규 Amazon S3 고객인 경우 Amazon S3를 무료로 시작할 수 있습니다. 자세한 내용은 ‭AWS 프리 티어‭를 참조하십시오.

참고

Amazon S3 Express One Zone 스토리지 클래스를 디렉터리 버킷과 함께 사용하는 방법에 대한 자세한 내용은 튜토리얼: S3 Express One Zone 시작하기디렉터리 버킷 작업 섹션을 참조하세요.

설정

Amazon S3에서 AWS CLI를 사용하기 전에 다음 사항을 충족해야 합니다.

AWS CLI가 제대로 구성되어 있는지 확인하려면 다음 명령을 실행합니다.

aws sts get-caller-identity

자세한 내용은 AWS CLI Command Referenceget-caller-identity를 참조하세요.

이 명령은 AWS CLI가 올바르게 설치 및 구성된 경우 사용 가능한 Amazon S3 명령 목록을 표시합니다.

1단계: 첫 번째 Amazon S3 버킷 생성

AWS CLI에 가입했다면 Amazon S3에 버킷을 만들 준비가 된 것입니다. Amazon S3의 모든 객체는 버킷에 저장됩니다. 데이터를 Amazon S3에 저장하기 전에 버킷을 만들어야 합니다.

참고

버킷을 만드는 데는 요금이 청구되지 않습니다. 객체를 버킷에 저장하거나 객체를 버킷과 주고받은 경우에만 요금이 청구됩니다. 이 설명서의 예제를 수행하는 동안 1 USD 미만의 최소 요금이 발생합니다. 스토리지 요금에 대한 자세한 내용은 Amazon S3 요금을 참조하십시오.

버킷을 생성하려면
  1. s3api create-bucket 명령을 사용하여 버킷을 만듭니다. amzn-s3-demo-bucket을 고유한 버킷 이름으로 바꾸고 us-east-1을 원하는 리전으로 바꿉니다.

    aws s3api create-bucket --bucket amzn-s3-demo-bucket --region us-east-1

    us-east-1 이외의 리전의 경우 위치 제약 조건을 지정해야 합니다.

    aws s3api create-bucket --bucket amzn-s3-demo-bucket --region us-west-2 --create-bucket-configuration LocationConstraint=us-west-2
    참고
    • 버킷을 만든 후에는 리전을 변경할 수 없습니다.

    • 지연 시간과 요금을 최소화하고 규제 요건을 충족하려면 가장 가까운 리전을 선택하십시오. 특정 리전에 저장된 객체는 사용자가 명시적으로 객체를 다른 리전으로 전송하지 않는 한 해당 리전을 벗어나지 않습니다. Amazon S3 AWS 리전 목록은 Amazon Web Services 일반 참조AWS 서비스 엔드포인트를 참조하세요.

    • 버킷 이름은 다음과 같아야 합니다.

      • 파티션 내에서 고유해야 합니다. 파티션은 리전의 그룹입니다. AWS에는 aws(상용 리전), aws-cn(중국 리전) 및 aws-us-gov(AWS GovCloud (US) 리전), 이렇게 세 가지 파티션이 있습니다.

      • 3~63자 이내여야 합니다.

      • 소문자, 숫자, 마침표(.) 및 하이픈(-)만 포함해야 합니다. 최상의 호환성을 위해 정적 웹 사이트 호스팅에만 사용되는 버킷을 제외하고 버킷 이름에 마침표(.)를 사용하지 않는 것이 좋습니다.

      • 문자나 숫자로 시작하고 끝나야 합니다.

    • 버킷을 생성한 후에는 해당 이름을 변경할 수 없습니다.

    • 버킷 이름에 민감한 정보가 포함되어서는 안 됩니다. 버킷 이름은 버킷의 객체를 가리키는 URL에 표시됩니다.

  2. 모든 버킷을 나열하여 버킷이 생성되었는지 확인합니다.

    aws s3 ls
  3. 객체 소유권에서 ACL을 비활성화하거나 활성화하고 버킷에 업로드된 객체의 소유권을 제어할 수 있습니다.

    ACL 비활성화됨

    버킷 소유자 적용(기본값) 설정 - ACL이 비활성화되고 버킷 소유자가 범용 버킷의 모든 객체를 자동으로 소유하고 완전히 제어합니다.

    aws s3api put-bucket-ownership-controls --bucket amzn-s3-demo-bucket --ownership-controls="Rules=[{ObjectOwnership=BucketOwnerEnforced}]"
    참고

    기본적으로 ACL은 비활성화되어 있습니다. Amazon S3의 최신 사용 사례 대부분은 더 이상 ACL을 사용할 필요가 없습니다. 각 객체에 대해 액세스를 개별적으로 제어해야 하는 드문 상황을 제외하고는 ACL을 비활성화한 채로 두는 것이 좋습니다. 자세한 내용은 객체 소유권 제어 및 버킷에 대해 ACL 사용 중지 섹션을 참조하세요.

    ACL 활성화됨

    • 버킷 소유자 기본 설정bucket-owner-full-control 미리 준비된 ACL을 사용하여 다른 계정이 버킷에 작성하는 새 객체를 버킷 소유자가 소유하고 완전히 제어합니다.

      aws s3api put-bucket-ownership-controls --bucket amzn-s3-demo-bucket --ownership-controls="Rules=[{ObjectOwnership=BucketOwnerPreferred}]"

      버킷 소유자 기본 설정을 적용하는 경우 모든 Amazon S3 업로드에 bucket-owner-full-control 미리 준비된 ACL을 포함하도록 요구하려면 이 ACL을 사용하는 객체 업로드만 허용하는 Amazon S3 PUT 작업에 bucket-owner-full-control 미리 제공된 ACL 요구(버킷 소유자 기본)를 수행할 수 있습니다.

    • 객체 라이터 설정 – 객체를 업로드하는 AWS 계정이 객체를 소유하고 완전히 제어하며 ACL을 통해 다른 사용자에게 이에 대한 액세스 권한을 부여할 수 있습니다.

      aws s3api put-bucket-ownership-controls --bucket amzn-s3-demo-bucket --ownership-controls="Rules=[{ObjectOwnership=ObjectWriter}]"
    참고

    기본 설정은 버킷 소유자 적용입니다. 기본 설정을 적용하고 ACL을 비활성화된 상태로 유지하려면 s3:CreateBucket 권한만 있으면 됩니다. ACL을 활성화하려면 s3:PutBucketOwnershipControls 권한이 있어야 합니다.

    버킷의 현재 객체 소유권 설정을 확인하는 방법:

    aws s3api get-bucket-ownership-controls --bucket amzn-s3-demo-bucket
  4. 퍼블릭 액세스 차단이 활성화되어 있는지 확인하는 방법(새 버킷에 대해 기본적으로 활성화되어 있음):

    aws s3api get-public-access-block --bucket amzn-s3-demo-bucket

    기본적으로, 신규 버킷에는 네 개의 퍼블릭 액세스 차단 설정이 모두 활성화되어 있습니다. 특정 사용 사례에 대해 하나 이상의 설정을 해제해야 하는 경우가 아니라면 모든 설정을 활성화된 상태로 유지하는 것이 좋습니다. 퍼블릭 액세스 차단에 대한 자세한 내용은 Amazon S3 스토리지에 대한 퍼블릭 액세스 차단 섹션을 참조하십시오.

    퍼블릭 액세스 차단을 활성화해야 하는 경우 다음 명령을 사용합니다.

    aws s3api put-public-access-block --bucket amzn-s3-demo-bucket --public-access-block-configuration "BlockPublicAcls=true,IgnorePublicAcls=true,BlockPublicPolicy=true,RestrictPublicBuckets=true"
    참고

    모든 퍼블릭 액세스 차단 설정을 활성화하려면 s3:CreateBucket 권한만 있으면 됩니다. 퍼블릭 액세스 차단 설정을 해제하려면 s3:PutBucketPublicAccessBlock 권한이 있어야 합니다.

  5. 버킷의 버전 관리를 활성화하는 방법:

    aws s3api put-bucket-versioning --bucket amzn-s3-demo-bucket --versioning-configuration Status=Enabled

    기본적으로, 버킷 버전 관리는 비활성화되어 있습니다. 버전 관리는 동일 버킷 내에 여러 개의 객체 변형을 보유하는 것을 의미합니다. 버전 관리를 사용하여 버킷에 저장된 모든 버전의 객체를 모두 보존, 검색 및 복원할 수 있습니다. 또한, 의도치 않은 사용자 작업 및 애플리케이션 장애가 발생해도 쉽게 복구할 수 있습니다. 버전 관리에 대한 자세한 내용은 S3 버전 관리로 여러 버전의 객체 유지 섹션을 참조하십시오.

  6. Amazon S3 Object Lock을 사용하면 새 객체가 삭제되거나 덮어쓰이지 않도록 보호할 수 있습니다. 자세한 내용은 Object Lock으로 객체 잠금 섹션을 참조하세요. Object Lock으로 객체 잠금을 활성화하는 방법(버킷 버전 관리 필요):

    새 버킷의 경우:

    aws s3api create-bucket --bucket amzn-s3-demo-bucket --region us-east-1 --object-lock-enabled-for-bucket

    기존 버킷의 경우:

    aws s3api put-object-lock-configuration --bucket amzn-s3-demo-bucket --object-lock-configuration '{"ObjectLockEnabled": "Enabled"}'

    Object Lock 활성화와 함께 기본값인 Object Lock으로 객체 잠금을 설정하려면 다음을 사용할 수 있습니다.

    aws s3api put-object-lock-configuration --bucket amzn-s3-demo-bucket --object-lock-configuration '{"ObjectLockEnabled":"Enabled","Rule":{"DefaultRetention":{"Mode":"COMPLIANCE","Days":30}}}'

    덜 제한적인 모드의 경우 "COMPLIANCE""GOVERNANCE"로 바꾸고 필요에 따라 일수를 조정할 수 있습니다.

    참고

    Object Lock을 사용하는 버킷을 만들려면 s3:CreateBucket, s3:PutBucketVersionings3:PutBucketObjectLockConfiguration 권한이 있어야 합니다.

  7. 버킷에 태그를 추가할 수 있습니다. AWS 비용 할당을 하면서 버킷 태그를 지정해 버킷 사용에 대한 요금 청구 주석을 달 수 있습니다. 태그는 버킷에 할당된 라벨을 나타내는 한 쌍의 키-값입니다. 자세한 내용은 비용 할당 S3 버킷 태그 사용 섹션을 참조하세요.

    버킷에 태그를 추가하는 방법:

    aws s3api put-bucket-tagging --bucket amzn-s3-demo-bucket --tagging 'TagSet=[{Key=Purpose,Value=Testing},{Key=Environment,Value=Development}]'
  8. 버킷과 새 객체는 Amazon S3 관리형 키(SSE-S3)를 암호화 구성의 기본 수준으로 사용하는 서버 측 암호화로 암호화됩니다. 버킷의 기본 암호화를 확인하려면 다음 명령을 사용합니다.

    aws s3api get-bucket-encryption --bucket amzn-s3-demo-bucket

    또한 AWS KMS 키(SSE-KMS)를 사용한 서버 측 암호화와 버킷의 AWS KMS 키(DSSE-KMS)를 사용한 이중 계층 서버 측 암호화를 구성할 수 있습니다. AWS 관리형 키(aws/s3)와 고객 관리형 키를 모두 SSE-KMSDSSE-KMS 암호화 구성의 AWS KMS 키로 사용할 수 있습니다. 고객 관리형 키에 대한 자세한 내용은 AWS Key Management Service 개발자 안내서의 고객 키 및 AWS 키를 참조하십시오. AWS KMS 키 생성에 대한 자세한 내용은 AWS Key Management Service 개발자 안내서Creating keys를 참조하세요.

    중요

    AWS KMS 키는 Amazon S3 버킷과 동일한 AWS 리전에 있어야 합니다. 교차 리전 KMS 키는 Amazon S3 버킷 암호화에 지원되지 않습니다.

    SSE-KMS를 통해 기본 암호화를 사용하도록 버킷을 구성할 때 Amazon S3 버킷 키를 사용할 수도 있습니다. Amazon S3 버킷 키를 사용하면 Amazon S3에서 AWS KMS로의 요청 트래픽이 줄어 암호화 비용이 절감됩니다. 자세한 내용은 Amazon S3 버킷 키를 사용하여 SSE-KMS 비용 절감 섹션을 참조하세요. Amazon S3 버킷 키는 DSSE-KMS에서 지원되지 않습니다. AWS CLI에서는 새 버킷을 생성할 때 Amazon S3 버킷 키가 기본적으로 활성화되지 않습니다. 기본적으로 활성화되어 있는 콘솔과는 다릅니다.

    SSE-KMS를 구성하고 Amazon S3 버킷 키를 활성화하는 방법:

    aws s3api put-bucket-encryption --bucket amzn-s3-demo-bucket --server-side-encryption-configuration "{\"Rules\":[{\"ApplyServerSideEncryptionByDefault\":{\"SSEAlgorithm\":\"aws:kms\",\"KMSMasterKeyID\":\"YOUR-KMS-KEY-ARN\"},\"BucketKeyEnabled\":true}]}"

    버킷에 Amazon S3 버킷 키가 활성화되어 있는지 확인하는 방법:

    aws s3api get-bucket-encryption --bucket amzn-s3-demo-bucket

    출력에는 true 또는 false로 설정된 BucketKeyEnabled 필드가 포함됩니다.

    DSSE-KMS를 구성하려면 다음 명령을 사용합니다.

    aws s3api put-bucket-encryption --bucket amzn-s3-demo-bucket --server-side-encryption-configuration '{"Rules":[{"ApplyServerSideEncryptionByDefault":{"SSEAlgorithm":"aws:kms:dsse","KMSMasterKeyID":"YOUR-KMS-KEY-ARN"}}]}'

    기본 암호화에 대한 자세한 내용은 Amazon S3 버킷에 대한 기본 서버 측 암호화 동작 설정 섹션을 참조하십시오. SSE-S3에 대한 자세한 내용은 Amazon S3 관리형 키를 사용한 서버 측 암호화(SSE-S3) 사용 섹션을 참조하세요.

    중요

    기본 암호화 구성으로 SSE-KMS 또는 DSSE-KMS 옵션을 사용할 경우 AWS KMS의 초당 요청 수(RPS) 할당량이 적용됩니다. AWS KMS로 전송되는 요청 수를 줄이는 Amazon S3 버킷 키를 활성화하여 KMS API 직접 호출을 줄일 수 있습니다. AWS KMS 할당량과 할당량 증대를 요청하는 방법에 대한 자세한 내용은 AWS Key Management Service 개발자 안내서의 할당량을 참조하십시오.

Amazon S3에 버킷을 만들었습니다. 다음 단계는 버킷에 객체를 업로드하는 것입니다.

2단계: 버킷에 객체 업로드

Amazon S3에 버킷을 생성했으면 버킷에 객체를 업로드할 준비가 된 것입니다. 텍스트 파일, 사진, 동영상 및 기타 모든 종류의 파일이 객체가 될 수 있습니다.

버킷에 객체를 업로드하려면
  1. 업로드할 간단한 텍스트 파일을 생성합니다. 텍스트 편집기를 사용하거나 다음 명령을 실행할 수 있습니다.

    echo 'Hello, Amazon S3!' > example.txt
  2. s3 cp 명령을 사용하여 파일을 버킷에 업로드합니다.

    aws s3 cp example.txt s3://amzn-s3-demo-bucket/

    업로드에 성공한 경우 다음과 유사한 출력 화면이 표시됩니다.

    upload: ./example.txt to s3://amzn-s3-demo-bucket/example.txt
  3. 버킷의 콘텐츠를 나열하여 객체가 업로드되었는지 확인합니다.

    aws s3 ls s3://amzn-s3-demo-bucket/

객체를 버킷에 성공적으로 업로드했습니다. 다음 단계는 객체를 다운로드하는 것입니다.

3단계: 객체 다운로드

버킷에 객체를 업로드한 후에는 객체에 대한 정보를 보고, 로컬 컴퓨터로 객체를 다운로드할 수 있습니다.

Amazon S3 버킷에서 객체를 다운로드하는 방법
  1. 객체에 대한 정보를 가져오는 방법:

    aws s3api head-object --bucket amzn-s3-demo-bucket --key example.txt

    이 명령은 콘텐츠 유형, 콘텐츠 길이, 마지막으로 수정된 날짜 등 객체에 대한 메타데이터를 반환합니다.

  2. 로컬 컴퓨터에 객체를 다운로드합니다.

    aws s3 cp s3://amzn-s3-demo-bucket/example.txt downloaded-example.txt

    다운로드에 성공한 경우 다음과 유사한 출력 화면이 표시됩니다.

    download: s3://amzn-s3-demo-bucket/example.txt to ./downloaded-example.txt
  3. 다운로드한 파일의 콘텐츠를 확인합니다.

    cat downloaded-example.txt
참고
  • 콘솔과 달리 AWS CLI는 와일드카드 또는 --recursive 플래그를 사용하여 한 번에 여러 객체를 다운로드할 수 있습니다.

  • AWS CLI를 사용하여 객체를 다운로드할 때 객체 키 이름 끝에 있는 마침표(.)가 보존됩니다(콘솔에서는 제거됨). 이는 객체 키가 마침표로 끝나는 경우에 중요합니다.

여러 객체를 다운로드하는 예:

특정 파일 확장자가 있는 Amazon S3 버킷에서 여러 객체를 다운로드하려면 예시와 같이 excludeinclude 필터와 함께 재귀 복사 명령을 사용합니다.

aws s3 cp s3://amzn-s3-demo-bucket/ . --recursive --exclude "*" --include "*.txt"

객체를 성공적으로 다운로드했습니다. 다음 단계는 폴더에 객체를 복사하는 것입니다.

4단계: 폴더에 객체 복사

이미 버킷에 객체를 추가한 후 객체를 다운로드했습니다. 이제 폴더를 만들고 객체를 폴더에 복사합니다.

객체를 폴더에 복사하려면
  1. Amazon S3에서 폴더는 객체 키 이름의 접두사로 표시됩니다. 접두사가 있는 객체를 복사하여 '폴더'를 생성합니다.

    aws s3 cp s3://amzn-s3-demo-source-bucket/example.txt s3://amzn-s3-demo-destination-bucket/favorite-files/example.txt

    복사에 성공한 경우 다음과 유사한 출력 화면이 표시됩니다.

    copy: s3://amzn-s3-demo-source-bucket/example.txt to s3://amzn-s3-demo-destination-bucket/favorite-files/example.txt
  2. 폴더의 콘텐츠를 나열하여 객체가 복사되었는지 확인합니다.

    aws s3 ls s3://amzn-s3-demo-destination-bucket/favorite-files/

객체를 폴더에 성공적으로 복사했습니다. 다음 단계는 객체 및 버킷을 삭제하는 것입니다.

5단계: 객체 및 버킷 삭제

객체 또는 버킷이 더 이상 필요하지 않은 경우 추가 요금이 부과되지 않도록 객체 또는 버킷을 삭제하는 것이 좋습니다. 실습용으로 이 시작 연습을 완료한 후 버킷 또는 객체를 사용할 계획이 없는 경우 요금이 더 이상 발생하지 않도록 버킷 및 객체를 삭제하는 것이 좋습니다.

버킷을 삭제하기 전에 버킷을 비우거나 버킷의 객체를 삭제합니다. 객체 및 버킷을 삭제한 후에는 더 이상 사용할 수 없습니다.

동일한 버킷 이름을 계속 사용하려면 객체를 삭제하거나 버킷을 비우고 버킷을 삭제하지 않는 것이 좋습니다. 버킷을 삭제하면 이름을 다시 사용할 수 있게 됩니다. 그러나 다른 AWS 계정에서 동일한 이름의 버킷을 생성한 후 다시 사용할 수 있습니다.

객체 삭제

버킷에서 모든 객체를 비우지 않고 삭제할 객체를 선택하려는 경우 객체를 삭제할 수 있습니다.

특정 객체 삭제:

aws s3 rm s3://amzn-s3-demo-bucket/example.txt

삭제에 성공한 경우 다음과 유사한 출력 화면이 표시됩니다.

delete: s3://amzn-s3-demo-bucket/example.txt

버킷 비우기

버킷을 삭제하려면 먼저 버킷을 비워야 합니다. 버킷을 비우면 버킷의 모든 객체, 버전, 삭제 마커가 삭제됩니다.

버킷을 비우려면
중요

버킷을 비우는 작업은 실행 취소할 수 없습니다. 버킷 비우기 작업이 진행되는 동안 버킷에 추가된 객체는 삭제됩니다.

  1. 옵션 1: 상대적으로 작은 버킷의 경우 --recursive 플래그와 함께 rm 명령을 사용하여 버킷의 모든 객체를 삭제합니다.

    aws s3 rm s3://amzn-s3-demo-bucket --recursive

    이 명령은 폴더의 객체를 포함하여 버킷의 모든 객체를 삭제합니다.

    참고

    버킷에 많은 객체 또는 큰 객체가 포함된 경우 이 명령이 시간 초과될 수 있습니다. 데이터가 많은 버킷의 경우 Amazon S3 수명 주기 규칙을 사용하여 버킷의 객체를 만료시킵니다.

    옵션 2: Amazon S3 수명 주기 규칙 사용(대규모 버킷에 권장)

    객체가 많거나 큰 객체가 있는 버킷의 경우 Amazon S3 수명 주기 규칙을 사용하여 모든 객체를 자동으로 만료시키고 삭제합니다. 수명 주기 규칙이 처리될 때까지 기다립니다(최대 24시간이 걸릴 수 있음). 버킷을 비우기 위해 수명 주기 규칙을 사용하는 방법에 대한 자세한 내용은 수명 주기 구성 규칙을 사용하여 Amazon S3 버킷을 비우려면 어떻게 해야 합니까?를 참조하세요.

  2. 버킷이 비어 있는지 확인:

    aws s3 ls s3://amzn-s3-demo-bucket
  3. 버킷에 버전 관리가 활성화되어 있는 경우 다음 명령을 사용하여 버전이 지정된 객체를 삭제하고 마커를 삭제합니다.

    버전이 지정된 객체 제거:

    aws s3api delete-objects --bucket amzn-s3-demo-bucket --delete "$(aws s3api list-object-versions --bucket amzn-s3-demo-bucket --output json --query='{Objects: Versions[].{Key:Key,VersionId:VersionId}}')"

    삭제 마커 제거:

    aws s3api delete-objects --bucket amzn-s3-demo-bucket --delete "$(aws s3api list-object-versions --bucket amzn-s3-demo-bucket --output json --query='{Objects: DeleteMarkers[].{Key:Key,VersionId:VersionId}}')"
  4. 버킷에 객체 버전과 삭제 마커가 전혀 없는지 확인:

    aws s3api list-object-versions --bucket amzn-s3-demo-bucket

    출력에 버전이나 삭제 마커가 전혀 남아 있지 않아야 합니다.

버킷 삭제

버킷을 비우거나 버킷에서 모든 객체를 삭제한 후 버킷을 삭제할 수 있습니다.

중요

버킷 삭제는 실행 취소할 수 없습니다. 버킷 이름은 고유합니다. 버킷을 삭제하면 다른 AWS 사용자가 해당 이름을 사용할 수 있습니다. 같은 버킷 이름을 계속 사용하려면 버킷을 삭제하지 마십시오. 대신 버킷을 비우고 보관하십시오.

버킷을 삭제하는 방법
  1. 버킷 삭제:

    aws s3api delete-bucket --bucket amzn-s3-demo-bucket
  2. 모든 버킷을 나열하여 버킷이 삭제되었는지 확인합니다.

    aws s3 ls

다음 단계

이전 예시에서는 AWS CLI를 사용하여 몇 가지 기본 Amazon S3 작업을 수행하는 방법을 알아보았습니다.

다음 주제에서는 사용자가 직접 애플리케이션에서 구현할 수 있도록 Amazon S3을 보다 심도 있게 이해할 수 있는 학습 경로를 설명합니다.

다음 목록은 Amazon S3의 일반적인 AWS CLI 명령을 보여줍니다.

  • cp - 로컬 파일 시스템과 Amazon S3 사이 또는 Amazon S3 위치 간에 파일 또는 객체를 복사합니다.

  • ls - 지정된 버킷 및 접두사 아래에 Amazon S3 객체 및 공통 접두사를 나열합니다.

  • mb - Amazon S3 버킷을 생성합니다.

  • mv - 로컬 파일 시스템과 Amazon S3 사이 또는 Amazon S3 위치 간에 파일 또는 객체를 이동합니다.

  • presign - AWS Amazon S3 객체에 대해 자격 증명 없이 임시 액세스를 허용하는 미리 서명된 URL을 생성합니다.

  • rb - 빈 Amazon S3 버킷을 제거합니다. --force 플래그를 사용하여 하나의 명령으로 콘텐츠가 포함된 버킷을 자동으로 비우고 삭제할 수 있습니다. 이 작업은 실행 취소할 수 없습니다.

  • rm - Amazon S3에서 객체를 삭제합니다.

  • sync - 소스 디렉터리에서 대상으로 새 파일과 업데이트된 파일을 재귀적으로 복사하여 디렉터리와 Amazon S3 접두사를 동기화합니다.

  • website - 버킷을 정적 웹 사이트로 구성합니다.

Amazon S3의 AWS CLI 명령에 대한 자세한 내용은 다음 리소스를 참조하세요.

  • s3 - 일반적인 작업을 간소화하는 상위 수준의 Amazon S3 명령입니다.

  • s3api - 모든 Amazon S3 API 작업에 직접 액세스합니다.

  • s3control - 모든 Amazon S3 Control API 작업에 직접 액세스합니다.