---
title: "copy-object"
slug: "copy-object"
updated: 2026-04-23T08:57:20Z
published: 2026-04-23T08:59:03Z
canonical: "cli.ncloud-docs.com/copy-object"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://cli.ncloud-docs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# copy-object

<p class="platform-info type-classic-vpc">Classic/VPC 환경에서 이용 가능합니다.</p>
Ncloud Storage에 저장한 객체를 복사합니다. 동일한 리전에 있는 버킷 간에만 복사가 가능합니다.

## 명령어<a name="명령어"></a>

명령어 구문은 다음과 같습니다.

```
aws s3api copy-object --bucket <value> --copy-source <value> --key <value> [--options]
```
:::(Info) (참고)
단일 COPY 작업으로 최대 5GB 크기의 객체를 복사할 수 있습니다. 5GB를 초과하는 객체를 복사하려면 upload-part-copy를 사용하시기 바랍니다. 
:::

### 파라미터<a name="파라미터"></a>
파라미터에 대한 설명은 다음과 같습니다.

| 파라미터 | 타입 | 필수 여부 | 설명 | 제약 사항 |
| ----- | ----- | ----- | ----- | ----- |
| --bucket \<value\>| string | Y | 객체를 복사할 대상 버킷 이름 | - | 
| --copy-source \<value\>| string | Y | 복사할 원본 오브젝트 | 최대 5GB까지 가능 | 
| --key \<value\> | string | Y | 저장할 객체의 이름(key값) | - | 
| --endpoint-url \<value\> | string | Y | 명령 호출의 기본 URL 지정 | kr 리전만 가능, 호출 도메인 정보는 [Ncloud Storage 개요](/docs/storage-ncloudstorage#호출도메인) 참고|
| --cache-control \<value\> | string | N | 캐싱 동작 설정 | - |  
| --content-disposition \<value\> | string | N | 객체에 대한 표현 정보 지정 | - | 
| --content-encoding \<value\> | string | N | 콘텐츠 인코딩 설정 | - | 
| --content-language \<value\> | string | N | 콘텐츠 언어 설정 | - | 
| --content-type \<value\> | string | N | 명시적인 콘텐츠 유형 정의 | - | 
| --metadata \<value\> | string | N | 객체와 함께 저장할 메타데이터 설정 | - | 
| --metadata-directive \<value\> | string | N | CopyObject 작업에 대한 x-amz-metadata-directive 헤더 설정 | 이 옵션이 설정된 경우, --copy-props 비활성화됨 |  
| --storage-class \<value\> | string | N | 객체를 저장할 스토리지 클래스 지정 | 선택 가능한 옵션 <ul><li>STANDARD </li><li> DEEP_ARCHIVE</li><li>  * Default는 Standard 클래스에 저장</li></ul>| 
| --cli-input-json \| --cli-input-yaml | string | N | 제공한 json 또는 yaml 문자열에서 인수 입력 | json과 yaml을 함께 지정 불가 | 
| --generate-cli-skeleton \<value\> | integer | N | API 명령을 실행하지 않고 이후에 input으로 사용할 수 있는 파라미터 템플릿 생성 | - |
| --debug | boolean | N | 디버그 로깅 사용 | - |
| --no-verify-ssl | boolean | N | SSL 인증서를 검증하는 기본 동작 재정의  | - |
| --no-paginate | boolean | N | 자동 pagination 비활성화, 결과에 대해 첫 번째 페이지 한 번만 호출됨  | - |
| --output \<value\> | string | N | 응답값의 포맷 지정 | 선택한 가능한 옵션 <ul><li> json </li><li> text </li><li> table </li><li> yaml </li><li> yaml-stream</li></ul>  |
| --query \<value\> | string | N | 응답 데이터를 필터링하는 데 사용할 JMESPath 쿼리 | - |
| --profile \<value\> | string | N | 자격 증명 파일에서 특정 profile 사용 | - |
| --region \<value\> | string | N | 리전 지정 | kr만 지원 |
| --color \<value\> | string | N | output color 설정 | 선택한 가능한 옵션 <ul><li>on</li><li>  off </li><li>  auto</li></ul> |
| --no-sign-request | boolean | N | 자격 증명 로드 비활성화 | - |
| --ca-bundle \<value\> | string | N | SSL 인증서를 확인할 때 사용할 CA 인증서 지정| - |
| --cli-read-timeout \<value\> | int | N | 최대 읽기 시간, 0으로 입력시 타임아웃이 아닌 차단 상태로 변경됨 | default는 60초로 설정 |
| --cli-connect-timeout \<value\> | int | N | 최대 연결 시간, 0으로 입력시 타임아웃이 아닌 차단 상태로 변경됨 | default는 60초로 설정 |
| --no-cli-pager | boolean | N | 응답값의 cli pager 비활성화 | - |
| --cli-auto-prompt | boolean | N | CLI 입력 파라미터 자동 프롬프트 설정 | - |
| --no-cli-auto-prompt | boolean | N | CLI 입력 파라미터 자동 프롬프트 비활성화 | - |
| --server-side-encryption | string | N | 서버 측 암호화 방식 | 선택 가능한 옵션 <ul><li>AES256</li><li>aws:kms</li></ul> |
| --sse-customer-algorithm | string | N | 사용자 암호화 알고리즘 (AES256) | - |
| --sse-customer-key | string | N | 사용자 제공 암호화 키 | - |
| --sse-customer-key-md5 | string | N | 사용자 제공 암호화 키의 MD5 값 | - |
| --copy-source-sse-customer-algorithm | string | N | 원본의 사용자 암호화 알고리즘 (AES256) | - |
| --copy-source-sse-customer-key | string | N | 원본의 사용자 제공 암호화 키 | - |
| --copy-source-sse-customer-key-md5 | string | N | 원본의 사용자 제공 암호화 키의 MD5 값 | - |

## 권한<a name="권한"></a>
Subaccount 사용자가 이 명령어를 사용하려면 View/GetObject(복사할 객체가 저장된 버킷), Change/PutObject (객체를 저장할 대상 버킷)액션 권한이 필요합니다.

## 예시<a name="예시"></a>
copy-object 명령어의 호출과 응답 예시를 설명합니다.

### 버전 관리가 설정된 버킷에 저장된 객체 복사<a name="버전관리가설정된버킷에저장된객체복사"></a>
#### 호출 예시<a name="호출예시"></a>
객체를 저장할 대상 버킷과 복사할 원본 객체를 지정하여 명령어를 호출하면 객체를 복사할 수 있습니다. 스토리지 클래스를 지정하지 않으면 Standard Class에 저장됩니다. 호출 예시는 다음과 같습니다.

```
aws s3api copy-object --bucket bucket-a --copy-source test-abcd/img/image.png --key img.png \
--endpoint-url=https://kr.ncloudstorage.com 
```

#### 응답 예시<a name="응답예시"></a>
응답 예시는 다음과 같습니다.

```
{
    "CopySourceVersionId": "54321fd4-0613-11f0-954d-a4f5ef94c2b0",
    "CopyObjectResult": {
        "ETag": "\"12345678a25da72de9ec3094a1f30cb6\"",
        "LastModified": "2025-03-26T12:25:27+00:00"
}
```
## 연관 명령어<a name="연관명령어"></a>
연관 명령어는 다음과 같습니다.

* [put-object](/docs/put-object)
* [get-object](/docs/get-object)
