すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:cp (オブジェクトのコピー)

最終更新日:Nov 21, 2025

オブジェクトの内容を変更せずに、同じリージョン内のソースバケットから宛先バケットに、または同じバケット内の別のフォルダにオブジェクトをコピーできます。ossutil cp コマンドを使用してオブジェクトをコピーします。

注意事項

  • オブジェクトをコピーするには、oss:GetObjectoss:ListObjects、および oss:PutObject 権限が必要です。詳細については、「RAM ユーザーへのカスタム権限の付与」をご参照ください。

  • オブジェクトのみコピーできます。マージされていないパートはコピーできません。

  • デフォルトでは、タグとオブジェクト属性がコピーされます。--copy-props オプションを使用して、プロパティとタグをコピーするためのルールを設定できます。

  • アカウント間およびリージョン間のコピー操作はサポートされていません。アカウントまたはリージョンをまたいでオブジェクトをコピーまたは移行するには、ossimport または データオンライン移行 を使用します。

コマンドのフォーマット

ossutil cp oss://src_bucket[/src_prefix] oss://dest_bucket[/dest_prefix] [flags]

パラメーター

タイプ

説明

src_bucket

文字列

ソースバケットの名前。

src_prefix

文字列

ソースバケット内のフォルダまたは指定されたプレフィックス。

dest_bucket

文字列

宛先バケットの名前。

dest_prefix

文字列

宛先バケット内のフォルダまたは指定されたプレフィックス。

--acl

文字列

オブジェクトのアクセス制御リスト (ACL)。有効な値:

  • private: 非公開

  • public-read: 公開読み取り

  • public-read-write: 公開読み書き

  • default: オブジェクトはバケットの ACL を継承します。

--bandwidth-limit

SizeSuffix

ネットワーク帯域幅を制限して、データ転送速度を制御します。最小値は 1024 B/s です。デフォルトの単位は B/s です。

このパラメーターを設定するときは、B (バイト)、K (キロバイト)、M (メガバイト)、G (ギガバイト) などの帯域幅値の単位を指定できます。たとえば、50 M は 50 MB/s の帯域幅制限を指定します。

--bigfile-threshold

SizeSuffix

大きいファイルのマルチパートアップロード、ダウンロード、またはコピーを有効にするためのしきい値。デフォルト値は 104857600 です。

--cache-control

文字列

オブジェクトのダウンロード時に Web ページのキャッシュ動作を指定します。

--checkers

int

並列で実行されるチェッカーの数。デフォルト値は 16 です。

--checkpoint-dir

文字列

再開可能な転送のチェックポイント情報を格納するディレクトリ。デフォルト値は .ossutil_checkpoint/ です。

--checksum

/

サイズまたはチェックサム (存在する場合) が宛先オブジェクトと異なるソースオブジェクトのみをコピーします。このオプションは、オブジェクト間のコピー操作でのみ有効です。

--content-disposition

文字列

オブジェクトの表示方法を指定します。

--content-encoding

文字列

オブジェクトのコーデックを指定します。

--content-type

文字列

オブジェクトのコンテンツタイプ。

--copy-props

文字列

オブジェクト間のコピー操作中にプロパティとタグをコピーするためのルールを設定します。次の設定がサポートされています:

  • default (デフォルト値): オブジェクト属性とタグの両方をコピーします。オブジェクト属性には、content-type、content-language、content-encoding、content-disposition、cache-control、expires、およびメタデータ (カスタムメタデータ) が含まれます。

  • metadata: オブジェクト属性のみをコピーします。

  • none: データのみをコピーし、オブジェクト属性とタグは無視します。

-d, --dirs

文字列

現在のディレクトリ内のファイルとサブディレクトリを処理しますが、すべてのサブディレクトリ内のすべてのファイルを再帰的に処理しません。

--encoding-type

文字列

入力オブジェクト名またはファイル名のエンコーディングタイプ。有効な値: url。

--end-with

文字列

指定された値とアルファベット順で同じか、それ以前のオブジェクトを返します。

--exclude

stringArray

パスまたはファイル名の除外ルール。

--exclude-from

stringArray

ルールファイルから除外ルールを読み取ります。

--expires

文字列

キャッシュされたコンテンツの絶対有効期限を指定します。

--files-from

stringArray

ファイルからソースファイル名のリストを読み取ります。空の行またはコメント行は無視されます。

--files-from-raw

stringArray

ファイルからソースファイル名のリストを読み取ります。

--filter

stringArray

パスまたはファイル名のフィルタリングルール。

--filter-from

stringArray

ルールファイルからフィルタリングルールを読み取ります。

-f, --force

/

確認プロンプトなしで操作を強制します。

--ignore-existing

/

既存の宛先オブジェクトをスキップします。

--include

stringArray

パスまたはファイル名の包含ルール。

--include-from

stringArray

ルールファイルから包含ルールを読み取ります。

-j, --job

int

同時タスクの数。デフォルト値は 3 です。

説明

このオプションは、-f--update--size-only、または --ignore-existing オプションを指定した場合にのみ有効です。

--list-objects

/

ListObjects API 操作を使用してオブジェクトを一覧表示します。

--max-size

SizeSuffix

転送するオブジェクトの最大サイズを制限します。デフォルトの単位はバイトです。B、K、M、G、T、P などの単位サフィックスも使用できます。1 K (KiB) = 1024 B。

--metadata

strings

オブジェクトのユーザーメタデータを key=value 形式で指定します。

--metadata-directive

文字列

宛先オブジェクトのメタデータの設定方法を指定します。有効な値:

  • COPY

  • REPLACE

--metadata-exclude

stringArray

オブジェクトメタデータの除外ルール。

--metadata-filter

stringArray

オブジェクトメタデータのフィルタリングルール。

--metadata-filter-from

stringArray

ルールファイルからオブジェクトメタデータのフィルタリングルールを読み取ります。

--metadata-include

stringArray

オブジェクトメタデータの包含ルール。

--min-age

Duration

指定された時間間隔より前に変更されたオブジェクトのみをコピーします。デフォルトの単位は秒です。単位サフィックスを使用できます。たとえば、1h は 1 時間を指定します。

説明

--min-age 1h は、1 時間以上前に変更されたオブジェクトのみをコピーします。

--max-age

Duration

指定された時間間隔内に変更されたオブジェクトのみをコピーします。デフォルトの単位は秒です。単位サフィックスを使用できます。たとえば、1h は 1 時間を指定します。

説明

--max-age 1h は、過去 1 時間以内に変更されたオブジェクトのみをコピーします。

--min-mtime

Time

指定された時刻より後に変更されたオブジェクトのみをコピーします。時刻は UTC 形式 (例: 2006-01-02T15:04:05) である必要があります。

説明

--min-mtime "2006-01-02T15:04:05" は、2006 年 1 月 2 日 15:04:05 より後に変更されたオブジェクトのみをコピーします。

--max-mtime

Time

指定された時刻より前に変更されたオブジェクトのみをコピーします。時刻は UTC 形式 (例: 2006-01-02T15:04:05) である必要があります。

--min-size

SizeSuffix

転送するオブジェクトの最小サイズを制限します。デフォルトの単位はバイトです。B、K、M、G、T、P などの単位サフィックスも使用できます。1 K (KiB) = 1024 B。

--no-progress

/

進捗横棒グラフを表示しません。

--no-error-report

/

バッチ処理中にエラーレポートファイルを生成しません。

--output-dir

文字列

バッチ処理中に生成されたエラーレポートファイルが格納されるディレクトリを指定します。デフォルト値は ossutil_output です。

--page-size

int

バッチコピー操作中にページごとに一覧表示するオブジェクトの最大数。デフォルト値は 1000 です。値は 1 から 1000 の間である必要があります。

--parallel

int

単一オブジェクトに対する操作の同時タスク数。

--part-size

SizeSuffix

パートサイズ。デフォルトでは、ossutil はオブジェクトサイズに基づいて適切なパートサイズを計算します。値は 100 KiB から 5 GiB の間である必要があります。

-r, --recursive

/

操作を再帰的に実行します。このオプションを指定すると、コマンドはバケット内の一致するすべてのオブジェクトに適用されます。それ以外の場合、コマンドはパスで指定されたオブジェクトにのみ適用されます。

--request-payer

文字列

リクエストの支払方法。リクエスト元支払いモードを使用する場合は、このパラメーターを `requester` に設定します。

--size-only

/

サイズが宛先オブジェクトと異なるソースオブジェクトのみをコピーします。

--start-after

文字列

指定された値よりアルファベット順で後のオブジェクトを返します。

--storage-class

文字列

オブジェクトのストレージクラス。有効な値:

  • Standard: 標準ストレージタイプ。

  • IA: 低頻度アクセスストレージクラス。

  • Archive: アーカイブストレージ。

  • ColdArchive: コールドアーカイブ。

  • DeepColdArchive: ディープコールドアーカイブ。

--tagging

文字列

オブジェクトのタグを key=value 形式で指定します。

--tagging-directive

文字列

宛先オブジェクトのタグの設定方法を指定します。有効な値:

  • COPY

  • REPLACE

-u, --update

/

宛先オブジェクトよりも新しいソースオブジェクトのみをコピーします。

説明

詳細については、「コマンドラインオプション」をご参照ください。

宛先オブジェクトの命名は、次のルールによって決定されます:

  • 単一のファイルをコピーするときに `dest_prefix` が空の場合、オブジェクト名はソースファイルの相対パスになります。

  • 単一のファイルをコピーするときに `dest_prefix` が `/` で終わる場合、オブジェクト名は `dest_prefix` にソースファイルの相対パスを追加して形成されます。

  • 単一のファイルをコピーするときに `dest_prefix` がスラッシュ (/) で終わらない場合、宛先は `dest_prefix` という名前になります。

  • バッチコピー操作の場合、`dest_prefix` がスラッシュ (/) で終わる場合、オブジェクト名は `dest_prefix` の後にソースファイルの相対パスが続きます。

  • バッチコピー操作で、`dest_prefix` がスラッシュ (/) で終わらない場合、オブジェクト名は `dest_prefix` + "/" + ソースファイルの相対パスになります。

使用例

  • 単一オブジェクトのコピー

    ossutil cp oss://examplebucket1/examplefile.txt oss://examplebucket1/desfolder/
  • オブジェクトの増分コピー

    バッチコピー操作中に、 [--update] オプションを指定すると、ossutil は宛先オブジェクトが存在しない場合、またはソースオブジェクトが宛先オブジェクトよりも最近変更された場合にのみオブジェクトをコピーします。コマンドは次のとおりです:

    ossutil cp oss://examplebucket1/srcfolder1/ oss://examplebucket1/desfolder/ -r --update

    このオプションを使用すると、失敗したバッチコピー操作を再試行するときに、正常にコピーされたオブジェクトをスキップして増分コピーを実行できます。

  • オブジェクトの名前変更

    ossutil cp oss://examplebucket1/examplefile.txt oss://examplebucket1/example.txt 

    [cp] コマンドを使用してオブジェクトの名前を変更する場合、ソースオブジェクトは削除されません。不要になった場合は、ソースオブジェクトを手動で削除する必要があります。

  • オブジェクトのタグの変更

    ossutil cp oss://examplebucket1/examplefile.txt oss://examplebucket1/ --tagging "abc=1&bcd=2&..."