既存のオブジェクトからデータをパーツとしてコピーし、パーツをアップロードします。
使用方法
1 GB を超えるサイズのオブジェクトをコピーするには、upload-part-copy コマンドを実行します。単一のコマンドを実行して 1 GB 未満のサイズのオブジェクトをコピーするには、「copy-object」をご参照ください。
upload-part-copy コマンドを実行する場合、コピー元とコピー先のバケットは同じリージョン内に配置されている必要があります。
upload-part-copy コマンドを実行してパーツをアップロードする前に、initiate-multipart-upload コマンドを実行して、Object Storage Service (OSS) サーバーから発行されたアップロード ID を取得する必要があります。
権限
デフォルトでは、Alibaba Cloud アカウントには完全な権限があります。 RAM ユーザーまたは Alibaba Cloud アカウント下の RAM ロールは、デフォルトでは権限がありません。 Alibaba Cloud アカウントまたはアカウント管理者は、RAM ポリシーまたは バケットポリシーを通じて操作権限を付与する必要があります。
API | アクション | 定義 |
UploadPartCopy |
| 既存のオブジェクトからデータをコピーしてパーツをアップロードするときに、コピー元オブジェクトのデータを読み取ります。 |
| 既存のオブジェクトからデータをコピーしてパーツをアップロードするときに、コピー先オブジェクトにデータを書き込みます。 | |
| 既存のオブジェクトからデータをコピーしてパーツをアップロードするときに、versionId を使用してオブジェクトバージョンを指定した場合、コピー元オブジェクトの指定されたバージョンを読み取るためにこの権限が必要です。 |
構文
ossutil api upload-part-copy --bucket value --key value --copy-source value --part-number value --upload-id value [flags]パラメーター | タイプ | 説明 |
--bucket | string | コピー元オブジェクトが格納されているバケットの名前。 |
--key | string | データのコピー元となるコピー元オブジェクトの完全なパス。 |
--copy-source | string | コピー元オブジェクトにアクセスするために使用されるアドレス。 フォーマット: |
--copy-source-if-match | string | データコピー条件。コピー元オブジェクトの ETag 値が指定された ETag 値と同じ場合、OSS はデータをコピーします。そうでない場合、OSS は 412 Precondition Failed を返します。 |
--copy-source-if-modified-since | string | オブジェクト転送条件。指定された時刻がコピー元オブジェクトの最終更新時刻よりも前の場合、システムはオブジェクトを転送し、200 OK を返します。そうでない場合、システムは 304 Not Modified を返します。 |
--copy-source-if-none-match | string | オブジェクト転送条件。指定された ETag 値がコピー元オブジェクトの ETag 値と一致しない場合、OSS はオブジェクトを転送し、200 OK を返します。そうでない場合、OSS は 304 Not Modified を返します。 |
--copy-source-if-unmodified-since | string | オブジェクト転送条件。指定された時刻がコピー元オブジェクトの最終更新時刻以降の場合、OSS はオブジェクトを転送し、200 OK を返します。そうでない場合、OSS は 412 Precondition Failed を返します。 |
--copy-source-range | string | コピー元オブジェクトからコピーするバイトの範囲。 |
--metadata-directive | string | コピー先オブジェクトのメタデータを構成するために使用されるメソッド。 |
--part-number | string | パーツを識別する番号。 |
--tagging | string | コピー先オブジェクトのタグ。 |
--tagging-directive | string | コピー先オブジェクトのタグを構成するために使用されるメソッド。 |
--upload-id | string | マルチパートアップロードタスクの ID。 |
upload-part-copy コマンドは UploadPartCopy 操作に対応します。 UploadPartCopy 操作のパラメーターの詳細については、「UploadPartCopy」をご参照ください。
サポートされているグローバルコマンドラインオプションの詳細については、「グローバルコマンドラインオプション」をご参照ください。
例
srcbucket 内の srcobject の最新バージョンからデータをパーツとしてコピーし、パーツをアップロードします。
ossutil api upload-part-copy --bucket examplebucket --key exampleobject --copy-source /srcbucket/srcobject --upload-id 123 --part-number 1srcbucket 内の srcobject の最新バージョンからデータを JSON 形式のパーツとしてコピーし、パーツをアップロードします。
ossutil api upload-part-copy --bucket examplebucket --key exampleobject --copy-source /srcbucket/srcobject --upload-id 123 --part-number 1 --output-format jsonsrcbucket 内の srcobject の最新バージョンからデータを YAML 形式のパーツとしてコピーし、パーツをアップロードします。
ossutil api upload-part-copy --bucket examplebucket --key exampleobject --copy-source /srcbucket/srcobject --upload-id 123 --part-number 1 --output-format jsonsrcbucket 内の srcobject の最新バージョンのバイト 0 からバイト 9 をパーツとしてコピーし、パーツをアップロードします。
ossutil api upload-part-copy --bucket examplebucket --key exampleobject --copy-source /srcbucket/srcobject --upload-id 123 --part-number 1 --copy-source-range bytes=0-9srcobject の ETag が 123 の場合、srcbucket 内の srcobject の最新バージョンからデータをパーツとしてコピーし、パーツをアップロードします。
ossutil api upload-part-copy --bucket examplebucket --key exampleobject --copy-source /srcbucket/srcobject --upload-id 123 --part-number 1 --copy-source-if-match 123最終更新時刻が Mon, 11 May 2020 08:16:23 GMT より前の場合、srcbucket 内の srcobject の最新バージョンからデータをパーツとしてコピーし、パーツをアップロードします。
ossutil api upload-part-copy --bucket examplebucket --key exampleobject --copy-source /srcbucket/srcobject --upload-id 123 --part-number 1 --copy-source-if-unmodified-since "Mon, 11 May 2020 08:16:23 GMT"srcbucket 内の srcobject の最新バージョンからデータをパーツとしてコピーし、パーツをアップロードし、コピー元オブジェクトのタグの代わりにリクエストで指定されたタグを使用します。
ossutil api upload-part-copy --bucket examplebucket --key exampleobject --copy-source /srcbucket/srcobject --upload-id 123 --part-number 1 --tagging-directive Replace --tagging "TagA=A&TagB=B"