ossutil の cp コマンドを使用して、OSS からローカルマシンにファイル、イメージ、ビデオ、その他のリソースをダウンロードします。
重要な注意事項
-
ファイルをダウンロードするには、
oss:GetObjectおよびoss:ListObjectsの権限が必要です。詳細については、「RAM ユーザーにカスタム権限ポリシーを付与する」をご参照ください。 -
-u, --updateオプションを使用すると、ターゲットファイルの有無にかかわらず、比較を実行するために各ファイルに対して少なくとも 1 つの HEAD リクエストが開始されます。データ変更が少ないシナリオでは、このプロセスは多くの非効率なリクエストを生成し、パフォーマンスに影響を与え、追加のリクエスト料金が発生する可能性があります。不要なリソース消費を避けるため、このオプションを使用する前にビジネス要件を慎重に評価してください。
コマンド形式
ossutil cp oss://bucket[/prefix] local-path [flags]
|
パラメーター |
タイプ |
説明 |
|
local-path |
string |
相対パス、絶対パス、および |
|
prefix |
string |
オブジェクトプレフィックス。プレフィックスが「/」で終わる場合、バッチ操作のみがサポートされます。プレフィックスが「/」で終わらない場合、コマンドラインオプションによって単一オブジェクトのダウンロードかバッチダウンロードかが決定されます。 |
|
--acl |
string |
オブジェクトのアクセス権限。有効値は次のとおりです。
|
|
--bandwidth-limit |
SizeSuffix |
ネットワーク帯域幅を制限し、データ転送速度を制御します。最小値は 1024 B/s です。デフォルト単位は B/s です。 このパラメーターを設定する際は、必要に応じて帯域幅の値の単位を指定します。オプションの単位には、B (バイト)、K (キロバイト)、M (メガバイト)、G (ギガバイト) があります。たとえば、`50 M` は 50 MB/s の帯域幅制限を示します。 |
|
--bigfile-threshold |
SizeSuffix |
大容量ファイルのマルチパートアップロード、ダウンロード、またはコピーを有効にするためのしきい値 (デフォルト: 104857600)。 |
|
--cache-control |
string |
オブジェクトがダウンロードされる際の Web キャッシュの動作を指定します。 |
|
--checkers |
int |
同時に実行されるチェッカーの数 (デフォルト: 16)。 |
|
--checkpoint-dir |
string |
チェックポイント情報のディレクトリ (デフォルト: |
|
--content-disposition |
string |
オブジェクトの表示方法を指定します。 |
|
--content-encoding |
string |
オブジェクトのエンコーディング方法を宣言します。 |
|
--content-type |
string |
オブジェクトのコンテンツタイプ。 |
|
--copy-props |
string |
メタデータとタグのレプリケーションルールを制御します。有効値は次のとおりです。
|
|
-d, --dirs |
string |
現在のディレクトリ内のファイルとサブディレクトリをダウンロードします。すべてのサブディレクトリ内のすべてのファイルを再帰的に表示するわけではありません。 |
|
--encoding-type |
string |
入力オブジェクト名またはファイル名のエンコーディング方法。有効値: `url`。 |
|
--end-with |
string |
指定された値より前のオブジェクトをアルファベット順に返します (指定された値を含む)。 |
|
--exclude |
stringArray |
パスまたはファイル名の除外ルール。 |
|
--exclude-from |
stringArray |
ルールファイルから除外ルールを読み取ります。 |
|
--expires |
string |
キャッシュされたコンテンツの絶対有効期限を指定します。 |
|
--files-from |
stringArray |
ファイルからソースファイル名のリストを読み取ります (空行またはコメント行は無視されます)。 |
|
--files-from-raw |
stringArray |
ファイルからソースファイル名のリストを読み取ります。 |
|
--filter |
stringArray |
パスまたはファイル名のフィルタリングルール。 |
|
--filter-from |
stringArray |
ルールファイルからフィルタリングルールを読み取ります。 |
|
-f, --force |
/ |
確認を求めることなく操作を強制します。 |
|
--include |
stringArray |
パスまたはファイル名の含めるルール。 |
|
--include-from |
stringArray |
ルールファイルから含めるルールを読み取ります。 |
|
-j, --job |
int |
同時タスク数 (デフォルト: 3)。 説明
このパラメーターは、 |
|
--list-objects |
/ |
ListObjects API を使用してオブジェクトをリストします。 |
|
--max-size |
SizeSuffix |
転送する最大ファイルサイズを制限します。デフォルト単位はバイトです。B|K|M|G|T|P などの単位サフィックスも使用できます。1K (KiB) = 1024B。 |
|
--metadata |
strings |
オブジェクトのユーザーメタデータを `key=value` 形式で指定します。 |
|
--metadata-directive |
string |
ターゲットオブジェクトのメタデータを設定する方法を指定します。有効値は次のとおりです。
|
|
--metadata-exclude |
stringArray |
オブジェクトのメタデータの除外ルール。 |
|
--metadata-filter |
stringArray |
オブジェクトのメタデータのフィルタリングルール。 |
|
--metadata-filter-from |
stringArray |
ルールファイルからオブジェクトのメタデータのフィルタリングルールを読み取ります。 |
|
--metadata-include |
stringArray |
オブジェクトのメタデータの含めるルール。 |
|
--min-age |
Duration |
指定された時間間隔より前に変更されたファイルのみをダウンロードします。デフォルト単位は秒です。単位サフィックスを使用できます。たとえば、`1h` は 1 時間を示します。 説明
|
|
--max-age |
Duration |
指定された時間間隔内に変更されたファイルのみをダウンロードします。デフォルト単位は秒です。単位サフィックスを使用できます。たとえば、`1h` は 1 時間を示します。 説明
|
|
--min-mtime |
Time |
指定された時刻より後に変更されたファイルのみをダウンロードします。時刻形式:協定世界時 (UTC)。たとえば、`2006-01-02T15:04:05`。 説明
|
|
--max-mtime |
Time |
指定された時刻より前に変更されたファイルのみをダウンロードします。時刻形式:協定世界時 (UTC)。たとえば、`2006-01-02T15:04:05`。 |
|
--min-size |
SizeSuffix |
転送する最小ファイルサイズを制限します。デフォルト単位はバイトです。B|K|M|G|T|P などの単位サフィックスも使用できます。1K (KiB) = 1024B。 |
|
--no-progress |
/ |
プログレスバーを表示しません。 |
|
--page-size |
int |
バッチダウンロード中にオブジェクトをページ分割する最大値 (デフォルト: 1000)。有効値: 1 ~ 1000。 |
|
--parallel |
int |
単一ファイル内部操作の同時タスク数。 |
|
--part-size |
SizeSuffix |
シャードサイズ。デフォルトでは、システムはファイルサイズに基づいて適切なシャードサイズを計算します。有効値: 100 KiB ~ 5 GiB。 |
|
-r, --recursive |
/ |
操作を再帰的に実行します。このオプションを指定すると、コマンドはバケット内のすべての対象オブジェクトに対して操作を実行します。指定しない場合、パスで指定されたオブジェクトに対してのみ操作を実行します。 |
|
--request-payer |
string |
リクエストの支払い方法。リクエスト元支払いモードを使用する場合は、この値を設定します。有効値: `requester`。 |
|
--size-only |
/ |
サイズが異なるソースファイルのみをダウンロードします。 |
|
--start-after |
string |
指定された値より後のオブジェクトをアルファベット順に返します (指定された値を含まない)。 |
|
--storage-class |
string |
オブジェクトのストレージクラス。有効値は次のとおりです。
|
|
--tagging |
strings |
オブジェクトタグを `key=value` 形式で指定します。 |
|
--tagging-directive |
string |
ターゲットオブジェクトのタグを設定する方法を指定します。有効値は次のとおりです。
|
|
-u, --update |
/ |
ターゲット上の既存のファイルがソースファイルより新しい場合、そのファイルをスキップします。 説明
ターゲット上の既存のファイルの変更時刻がソースファイルと同じ場合、システムはファイルを更新します。 |
|
--ignore-existing |
/ |
既存のターゲットファイルをスキップします。 |
|
--version-id |
string |
オブジェクトのバージョン ID を指定します。 |
|
--write-buffer-size |
SizeSuffix |
書き込みに使用されるメモリバッファーサイズ。4 KB に自動的にアラインされます。B / K / M のサフィックスをサポートします (デフォルト: 128 KiB)。有効値: 0 ~ 32 MiB。 |
サポートされているグローバルコマンドラインオプションの詳細については、「グローバルコマンドラインオプション」をご参照ください。
ターゲットファイルの命名規則:
-
単一ファイルをダウンロードする場合、送信先がディレクトリであれば、ソースファイルの相対パスを使用してそのディレクトリにファイルが作成されます。
-
単一ファイルをダウンロードする場合、送信先がファイルであるか存在しない場合、ダウンロードされたファイルは指定された送信先ファイル名で保存されます。
-
バッチダウンロードを実行する場合、各ソースファイルの相対パスに基づいて送信先ルートディレクトリにサブディレクトリが再帰的に作成されます。その後、ファイルはそれぞれのサブディレクトリに作成されます。
ソースファイルの相対パスは、指定されたプレフィックスが削除された後に残るオブジェクト名の一部です。
cp oss://bucket/root/dir/ ... を実行する場合、オブジェクト root/dir/subdir/test.txt の相対パスは subdir/test.txt です。
例
単一ファイルのダウンロード
ファイルをダウンロードする際に送信先ファイル名を指定しない場合、ファイルは元の名前でローカルに保存されます。送信先ファイル名を指定した場合、ファイルは指定された名前でローカルに保存されます。
-
ファイルを元の名前で保存する
ossutil cp oss://examplebucket/examplefile.txt D:/localpath -
ファイルを指定された名前で保存する
ossutil cp oss://examplebucket/examplefile.txt D:/localpath/example.txt
複数ファイルのダウンロード
-
特定の種類のファイルをダウンロード
同じプレフィックスまたはサフィックスを共有するファイルなど、一貫した命名パターンを持つ複数のファイルをダウンロードするには、--include オプションと --exclude オプションを使用してファイルをフィルタリングできます。
JPG 形式ではないすべてのファイルをダウンロードします。
ossutil cp oss://examplebucket/destfolder/ D:/localpath/ --exclude "*.jpg" -r -
ダウンロード フォルダ
ossutil cp -r oss://examplebucket/destfolder/ D:/localpath/ -
バケットのルートディレクトリ内のすべてのファイルをダウンロード
ossutil cp -r oss://examplebucket D:/localpath/
ダウンロード速度の制限
examplefile.txt を現在のディレクトリにダウンロードし、ダウンロード速度を 20 MB/s に制限します。
ossutil cp oss://examplebucket/examplefile.txt . --bandwidth-limit 20971520