このトピックでは、使用できる高度なコマンドについて説明します。
コマンドの説明
コマンドの範囲 | サポートされているオプション |
すべての高度なコマンド |
|
バッチ操作をサポートするコマンド |
|
宛先フィルタリングルールをサポートするコマンド |
|
単一オブジェクトをサポートするコマンド | --version-id string:オブジェクトのバージョン ID。 |
リストモードをサポートするコマンド | --list-format:リストファイルの形式。有効値:plain および inventory。 --list-manifest-from:リストファイルの形式の説明をファイルから読み取ります。このパラメーターは、リストファイルの形式が inventory の場合に必要です。 |
ローカルオプション
ローカルオプション | オプションタイプ | 説明 |
--encoding-type | string | 入力オブジェクト名またはファイル名のコーデック。有効値:url。 |
--request-payer | string | リクエストの支払方法。リクエスト元支払いモードを使用する場合は、このパラメーターを設定します。有効値:requester。 |
--start-after | string | 指定された値のアルファベット順で後にあるオブジェクトを返します。指定されたオブジェクトは含まれません。 |
--end-with | string | 指定された値のアルファベット順で前にあるオブジェクトを返します。指定されたオブジェクトは含まれます。 |
--page-size | int | バッチ処理中にページごとにリストするオブジェクトの最大数。デフォルト値:1000。有効値の範囲:1~1000。 |
--include | stringArray | パスまたはファイル名の包含ルール。 |
--include-from | stringArray | ルールファイルから包含ルールを読み取ります。 |
--exclude | stringArray | パスまたはファイル名の除外ルール。 |
--exclude-from | stringArray | ルールファイルから除外ルールを読み取ります。 |
--filter | stringArray | パスまたはファイル名のフィルター ルール。 |
--files-from | stringArray | ソースファイル名のリストをファイルから読み取ります。空行やコメント行は無視されます。これはファイルフィルタリング操作にのみ適用されます。 |
--files-from-raw | stringArray | ソースファイル名のリストをファイルから読み取ります。これはファイルフィルタリング操作にのみ適用されます。 |
--max-age | Duration | この期間より古いファイルは転送しません。デフォルトの単位は秒です。ms、s、m、h、d、w、M、y などの単位サフィックスも使用できます。デフォルト値:off。 |
--min-age | Duration | この期間より新しいファイルは転送しません。デフォルトの単位は秒です。ms、s、m、h、d、w、M、y などの単位サフィックスも使用できます。デフォルト値:off。 |
--max-mtime | Time | この時刻より新しいファイルは転送しません。UTC 形式を使用します。デフォルト値:off。 |
--min-mtime | Time | この時刻より古いファイルは転送しません。UTC 形式を使用します。デフォルト値:off。 |
--max-size | SizeSuffix | 転送するファイルの最大サイズ。デフォルトの単位はバイトです。B、K、M、G、T、P などの単位サフィックスも使用できます。1 K (KiB) = 1024 B。 |
--min-size | SizeSuffix | 転送するファイルの最小サイズ。デフォルトの単位はバイトです。B、K、M、G、T、P などの単位サフィックスも使用できます。1 K (KiB) = 1024 B。 |
--metadata-exclude | stringArray | オブジェクトメタデータの除外ルール。 |
--metadata-include | stringArray | オブジェクトメタデータの包含ルール。 |
--metadata-filter | stringArray | オブジェクトメタデータのフィルター ルール。 |
--metadata-filter-from | stringArray | ルールファイルからオブジェクトのメタデータフィルター ルールを読み取ります。 |
--checksum | / | サイズとチェックサム (存在する場合) が一致しないソースファイルのみをコピーします。 |
--size-only | / | サイズが一致しないソースファイルのみをコピーします。 |
-u, --update | / | 宛先ファイルより新しいソースファイルのみをコピーします。 |
-r, --recursive | / | 再帰的な操作を実行します。このオプションを指定すると、コマンドは条件を満たすバケット内のすべてのオブジェクトに対して実行されます。それ以外の場合、コマンドはパスで指定されたオブジェクトに対してのみ実行されます。 |
-d, --dirs | / | すべてのサブディレクトリ内のすべてのファイルを再帰的に表示するのではなく、現在のフォルダー内のファイルとサブディレクトリを返します。 |
-f, --force | / | 確認プロンプトなしで操作を強制実行します。 |
--list-objects | / | ListObjects API を使用してオブジェクトをリストします。 |
--no-progress | / | 進行状況バーを表示しません。 |
-j, --job | int | 複数ファイルの操作における同時タスクの数。デフォルト値:3。 |
--checkers | int | 並行して実行するチェッカーの数。デフォルト値:16。 |
--parallel | int | 単一ファイル内の操作における同時タスクの数。 |
--part-size | SizeSuffix | パートサイズ。デフォルトでは、ファイルサイズに基づいて適切なパートサイズが計算されます。有効値の範囲:100 KiB~5 GiB。 |
--bigfile-threshold | int | 大きなファイルに対してマルチパートアップロード、ダウンロード、またはコピーを有効にするためのしきい値。デフォルト値:104857600。 |
--version-id | string | オブジェクトのバージョン ID。 |
--storage-class | string | オブジェクトのストレージクラス。有効な値: Standard、IA、Archive、ColdArchive、DeepColdArchive。 |
--acl | string | オブジェクトのアクセス権限。有効値:private、public-read、public-read-write、default。 |
--cache-control | string | オブジェクトのダウンロード時の Web ページのキャッシュ動作を指定します。 |
--content-disposition | string | オブジェクトの表示形式を指定します。 |
--content-encoding | string | オブジェクトのコーデックを宣言します。 |
--content-type | string | オブジェクトのコンテンツタイプ。 |
--expires | string | キャッシュされたコンテンツの絶対有効期限を指定します。 |
--copy-props | string | ソースオブジェクトからコピーするプロパティを決定します。有効値:none、metadata、default。 |
--tagging | string | オブジェクトのタグを key=value 形式で指定します。 |
--tagging-directive | string | 宛先オブジェクトのタグを設定する方法を指定します。有効値:COPY および REPLACE。 |
--metadata | string | オブジェクトのユーザーメタデータを key=value 形式で指定します。 |
--metadata-directive | string | 宛先オブジェクトのメタデータを設定する方法を指定します。有効値:COPY および REPLACE。 |
--list-format | string | リストファイルの形式。有効値:plain および inventory。 |
--list-manifest-from | string | リストファイルの形式の説明をファイルから読み取ります。このパラメーターは、リストファイルの形式が inventory の場合に必要です。 |
フィルターオプション
フィルターオプションは、ls、cp、sync、rm などのバッチ操作をサポートするコマンドに適用されます。これらのオプションを使用すると、パスまたはファイル名、パスまたはファイルリスト、ファイルの更新時刻、およびファイルサイズに基づいて項目をフィルタリングできます。オブジェクトの場合は、メタデータでフィルタリングすることもできます。
フィルターオプションはコマンドラインでのみ使用できます。設定ファイルで指定することはできません。
フィルター設定をテストするには、ls コマンドを使用して検証できます。また、--dry-run/-n オプションを使用して、変更を加えずに試行実行することもできます。
パス/ファイル名によるフィルタリング
名前またはパスでファイルを照合するには、含めるファイルと除外するファイルを指定するフィルター ルールを定義する必要があります。
--include および --exclude オプションを使用してルールを定義できます。例:--include="*.txt" および --exclude="*"。
ルールは、コマンドラインオプションまたはルールファイルで指定できます。複数のルールを組み合わせて使用することもできます。ルールの完全なセットは、次の原則に従って結果をフィルタリングするリストを形成します:
ルールは順番に処理されます。コマンド内のパラメーターは左から右に処理され、ファイル内のルールは上から下に処理されます。
各ファイルまたはパスは、含めるか除外するかを決定するためにルールと照合されます。
ルールは順番にチェックされます。ルールが一致するとすぐにチェックは停止します。
一致するルールがない場合、ファイルまたはパスはデフォルトで含まれます。
ローカルファイルシステムでは、フォルダーが除外されると、そのすべてのサブフォルダーとファイルも除外されます。
バケットにはフォルダー構造がないため、各オブジェクトは個別にフィルタリングされます。
Glob マッチングパターンが使用されます。Glob マッチングパターンの一般的なルールは次のとおりです:
パターンが
/で始まる場合、パスの先頭と一致する必要があります。それ以外の場合は、パスの任意のレベルの名前と一致できます。パターンが
/で終わる場合、フォルダーのみに一致します。それ以外の場合は、フォルダーまたはファイルに一致できます。例:dir/。/文字はパス区切り文字を表します。例:subdir/test.txt。*は、任意の長さの任意の文字列に一致しますが、/には一致しません。例:*.txt。パターンが
**で終わる場合、/を含む任意の長さの任意の文字列に一致します。例:dir/** はパス "dir/subdir/xx/test.txt" に一致します。?は / を除く任意の 1 文字に一致します。[]は、特定のクラスの 1 文字に一致します。例:[a-z] は小文字に、[0-9] は数字に一致します。デフォルトでは、パターンはファイルまたはフォルダー名全体と一致する必要があります。例:`foo` は "foo" および "dir/foo" に一致しますが、"dir/foo1" または "foo/xx" には一致しません。
パターンは、名前の一部ではなく、完全なフォルダーまたはファイル名と一致する必要があります。例:`foo` は "xxx/afoo" に一致せず、`abc/foo` は "subdir/aabc/foo" に一致しません。
Windows では、パス区切り文字として \ ではなく / を使用してください。
コマンドラインで次の構文とパラメーターの 1 つ以上を指定することにより、パスとファイル名のフィルター ルールの順序付きリストを作成できます:
項目 | 説明 |
フィルター ルール構文 |
|
フィルター ルール オプション パラメーター |
|
次の表に、一般的なオプションを示します:
オプション | 説明 |
--include --exclude | パラメーターにはマッチングパターンを指定します。各オプションは 1 つのルールを表します。複数のルールを使用するには、これらのオプションを繰り返します。 例: 次のコマンド例では、Alibaba Cloud OSS の oss://examplebucket/exampledir/ フォルダーから、フィルター ルールに一致するファイルを localdir/ フォルダーに再帰的にダウンロードします。このルールは、すべての |
--filter | パラメーターには命令マッチングパターンを指定します。各オプション値は 1 つのルールを表します。複数のルールを使用するには、これらのオプションを繰り返します。 例:
次のコマンド例では、Alibaba Cloud OSS の oss://examplebucket/exampledir/ フォルダーから、フィルター ルールに一致するファイルを localdir/ フォルダーに再帰的にダウンロードします。このルールは |
--include-from --exclude-from | パラメーターにはルールファイルのパスを指定します。ルールファイル内の各行は Glob マッチングパターンを表します。複数のルールファイルをインポートするには、これらのオプションを繰り返します。 --include-from でインポートされたすべてのルールは包含ルールです。--exclude-from でインポートされたすべてのルールは除外ルールです。 例: ルールファイル include-file.txt の内容は次のとおりです: ルールファイル include-file.txt には次の内容が含まれています: |
--filter-from | パラメーターにはルールファイルのパスを指定します。ルールファイル内の各行は命令 Glob マッチングパターンを表します。 複数のルールファイルをインポートするには、これらのオプションを繰り返します。 例: |
追加情報:
ファイルからルールを読み取る場合、ルールは上から下に処理されます。
#または;で始まる空行およびコメント行は無視されます。ファイルパスが
-の場合、ルールは標準入力 (stdin) から読み取られます。このオプションは 1 回のみ指定できます。--include または --include-from ルールを使用する場合、ルールリストの末尾に
- **ルールが追加されます。--filter + pattern を使用する場合、ルールリストの末尾に
- **ルールは追加されません。
例:--filter を使用して .jpg 拡張子を持つファイルのみを含むルールを設定するには、`--filter "+ *.jpg" --filter "- **"` を指定する必要があります。
--filter または --filter-from オプションを --include、--include-from、--exclude、または --exclude-from オプションと組み合わせて使用することはできません。
パス/ファイルリストによるフィルタリング
コマンドラインオプションを使用して、パスまたはファイル名のリストを指定できます。サポートされているオプションは次のとおりです:
オプション | 説明 |
--files-from | ファイルからパス/ファイル名のリストを読み取ります。このオプションを繰り返して、複数のリストファイルを使用できます。 リストファイル内の各行を処理する際、先頭または末尾のスペースは削除され、 |
--files-from-raw | ファイルからパス/ファイル名のリストを読み取ります。このオプションを繰り返して、複数のリストファイルを使用できます。 リストファイル内の各行を処理する際、先頭または末尾のスペース、および |
照合するパスまたはファイルのリストを指定した場合、他のパターンマッチングルールは無視されます。
ファイル時刻によるフィルタリング
時刻フィルター ルールを設定して、特定の時間範囲内に最終更新されたファイルまたはオブジェクトのみを転送できます。
時刻フィルター ルールは、相対時間と絶対時間の 2 つのモードをサポートしています。設定パラメーターは次のとおりです:
パラメーター | 説明 | |
--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-age および --max-age でサポートされている単位サフィックスは次のとおりです:ms (ミリ秒)、s (秒)、m (分)、h (時間)、d (日)、w (週)、M (月)、y (年)。
単位サフィックスを使用する場合、10 進数値を使用できます。例:1.5d は 1 日半を表します。
例:3 日以上経過したファイルまたはオブジェクトをリストします。
ossutil ls oss://bucket/ --min-age 3dファイルサイズによるフィルタリング
ファイルサイズベースのフィルター ルールを設定して、特定のサイズ範囲内のファイルまたはオブジェクトのみを転送できます。
ファイルサイズフィルター ルールの設定パラメーターは次のとおりです:
パラメーター | 説明 |
--min-size | このサイズより小さいファイルは転送しません。デフォルトの単位はバイト (B) です。単位サフィックスも使用できます。例:1K (KiB) は 1024 バイトを表します。 |
--max-size | このサイズより大きいファイルは転送しません。デフォルトの単位はバイト (B) です。単位サフィックスも使用できます。例:1K (KiB) は 1024 バイトを表します。 |
追加情報:
サポートされている単位サフィックスは次のとおりです:K (KiB) = 1024 バイト、M (MiB)、G (GiB)、T (TiB)、P (PiB)、E (EiB)。
単位サフィックスを使用する場合、10 進数値を使用できます。例:0.5K。
例:1 MiB 以下のファイルまたはオブジェクトをリストします。
ossutil ls oss://bucket/ --max-size 1Mオブジェクトのメタデータマッチングルールによるフィルタリング
メタデータフィルターは、パスおよびファイル名フィルターと同様の方法で使用されますが、バケット内のオブジェクトにのみ適用されます。
メタデータフィルターでは、オブジェクトのメタデータを `key=value` として定義し、マッチングに glob パターンを使用できます。
次の設定オプションがサポートされています:
--metadata-include
--metadata-exclude
--metadata-filter
--metadata-filter-from
次のオブジェクトのメタデータがサポートされています:
ストレージクラス:`x-oss-storage-class=value` を使用します。`value` の有効値は Standard、IA、Archive、ColdArchive、DeepColdArchive です。
オブジェクトタイプ:`x-oss-object-type=value` を使用します。`value` の有効値は Normal、Multipart、Appendable、Symlink です。
解凍ステータス:`x-oss-restore=value` を使用します。必要に応じて `value` を設定します。
Content-Type:`content-type=value` を使用します。必要に応じて `value` を設定します。
ユーザー定義メタデータ:`x-oss-meta-aaa=value` を使用します。ここで `aaa` は小文字です。必要に応じて `value` を設定します。
例:ストレージクラスが Archive、Cold Archive、または Deep Cold Archive のオブジェクトをリストします。
ossutil ls oss://bucket/ --metadata-include "x-oss-storage-class=*Archive"