このトピックでは、ossutil の高レベルコマンドについて説明します。
コマンドの説明
コマンドの範囲 | サポートされているオプション |
すべての高レベルコマンド |
|
バッチ処理をサポートする高レベルコマンド |
|
宛先オブジェクトによるフィルタリングをサポートする高レベルコマンド |
|
単一オブジェクト操作をサポートするコマンド | --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 | --end-with オプションの値以前に辞書順で名前が来るオブジェクトに一致します。 |
--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 | このオプションの値より最終更新日時が古いオブジェクトを除外します。デフォルトの単位は s (秒) です。数値に単位を付加できます: ms (ミリ秒)、s (秒)、m (分)、h (時間)、d (日)、w (週)、M (月)、または y (年)。デフォルト値: off。 |
--min-age | Duration | このオプションの値より最終更新日時が新しいオブジェクトを除外します。デフォルトの単位は s (秒) です。数値に単位を付加できます: ms (ミリ秒)、s (秒)、m (分)、h (時間)、d (日)、w (週)、M (月)、または y (年)。デフォルト値: off。 |
--max-mtime | Time | このオプションの値より最終更新日時が新しいオブジェクトを除外します。時刻は UTC である必要があります。デフォルト値: off。 |
--min-mtime | Time | このオプションの値より最終更新日時が古いオブジェクトを除外します。時刻は UTC である必要があります。デフォルト値: off。 |
--max-size | SizeSuffix | 転送できるファイルまたはオブジェクトの最大サイズ。デフォルトでは、サイズはバイト (B) 単位です。数値に 1024 ベースの単位を付加できます: B (バイト)、K (KiB)、M (MiB)、G (GiB)、T (TiB)、または P (PiB)。 |
--min-size | SizeSuffix | 転送できるファイルまたはオブジェクトの最小サイズ。デフォルトでは、サイズはバイト (B) 単位です。数値に 1024 ベースの単位を付加できます: B (バイト)、K (KiB)、M (MiB)、G (GiB)、T (TiB)、または P (PiB)。 |
--metadata-exclude | stringArray | オブジェクトメタデータの除外ルール。 |
--metadata-include | stringArray | オブジェクトメタデータの包含ルール。 |
--metadata-filter | stringArray | オブジェクトメタデータのフィルター ルール。 |
--metadata-filter-from | stringArray | ファイルからメタデータフィルター ルールを読み取ります。 |
--checksum | / | 次のいずれかの条件が満たされた場合にのみ、ソースオブジェクトがコピーされることを指定します: a. ソースオブジェクトのサイズが宛先オブジェクトのサイズと異なる。b. ソースオブジェクトの CRC-64 が宛先オブジェクトの CRC-64 と異なるが、ソースオブジェクトのサイズが宛先オブジェクトのサイズと同じである。 |
--size-only | / | ソースオブジェクトのサイズが宛先オブジェクトと異なる場合にのみ、ソースオブジェクトをコピーします。 |
-u, --update | / | ソースオブジェクトの最終更新日時が宛先オブジェクトの最終更新日時より新しい場合にのみ、ソースオブジェクトをコピーします。 |
-r, --recursive | / | コマンドが操作を再帰的に実行することを指定します。このパラメーターが指定されている場合、コマンドはバケット内の条件を満たすすべてのオブジェクトに対して有効になります。それ以外の場合、コマンドは指定されたパス内のオブジェクトに対してのみ有効になります。 |
-d, --dirs | / | すべてのサブディレクトリ内のすべてのオブジェクトを再帰的に表示する代わりに、現在のディレクトリ内のオブジェクトとサブディレクトリを返します。 |
-f, --force | / | ユーザーの確認を必要とせずに操作を強制します。 |
--list-objects | / | ListObjects 操作を呼び出してオブジェクトをリストします。 |
--no-progress | / | プログレスバーを非表示にします。 |
-j, --job | int | 複数のファイルまたはオブジェクトを処理するための同時ジョブの数。デフォルト値: 3。 |
--checkers | int | 並行して実行できるチェッカーの数。デフォルト値: 16。 |
--parallel | int | 単一オブジェクトに対する内部操作の同時タスク数。 |
--part-size | SizeSuffix | パートサイズ。デフォルトでは、ossutil はオブジェクトサイズに基づいて適切なパートサイズを計算します。パートサイズの範囲は 100 KiB から 5 GiB です。 |
--bigfile-threshold | int | マルチパートアップロード、ダウンロード、またはコピーを使用するためのオブジェクトサイズのしきい値。デフォルト値: 104857600。 |
--version-id | string | オブジェクトのバージョン ID。 |
--storage-class | string | オブジェクトのストレージクラス。有効な値: Standard、IA、Archive、ColdArchive、DeepColdArchive。 |
--acl | string | オブジェクトの ACL。有効な値: 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="*"
包含ルールと除外ルールは、コマンドラインで直接指定するか、ルールファイルに書き込むことで指定できます。要件に応じて --include オプションと --exclude オプションを組み合わせ、1 つのコマンドで複数回指定できます。オプションのすべての出現は、包含ルールと除外ルールのリストを定義し、次の原則に基づいてファイルまたはオブジェクトを照合します。
オプションの順序は重要です。ルールは、コマンドラインでは左から右へ、ルールファイルでは上から下へと適用されます。
検出されたファイル、オブジェクト、またはパスは、包含または除外についてすぐにチェックされます。
ルールの一致チェックは順番に行われます。ファイル、オブジェクト、またはパスが包含または除外ルールに一致する場合、後続のルールに対してはチェックされなくなります。
ファイル、オブジェクト、またはパスが指定されたどのルールにも一致しない場合、そのファイル、オブジェクト、またはパスは包含されます。
ローカルファイルシステム内のディレクトリが除外された場合、そのディレクトリ内のすべてのサブディレクトリとファイルが除外されます。
オブジェクトはバケットにフラットに格納され、包含または除外について 1 つずつチェックされます。
ossutil は glob マッチングを使用します。一般的なマッチングパターンは次のとおりです。
パターンが
/で始まる場合、パターンはパスの先頭に一致する必要があります。それ以外の場合、パターンはパスの任意の部分に一致できます。パターンが
/で終わる場合、パターンはディレクトリにのみ一致します。それ以外の場合、パターンはディレクトリとファイルの両方に一致できます。例: dir/。パターンの中央にある
/はパス区切り文字を表します。例: subdir/test.txt。*は任意の長さの任意の文字に一致しますが、/には一致しません。例: *.text。パターンの末尾にある
**は、任意の長さの任意の文字 (/を含む) に一致します。たとえば、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 では、パス区切り文字として \ の代わりに / が使用されます。
次の表は、パスまたは名前でファイルまたはオブジェクトをフィルタリングするために使用できるフィルター ルール構文とオプションについて説明しています。
項目 | 説明 |
フィルター ルール構文 |
|
フィルターオプション |
|
次の表は、フィルターオプションについて説明しています。
オプション | 説明 |
--include --exclude | マッチングパターンはパラメーターに従います。各オプションは単一のルールを表します。オプションを繰り返すことで、コマンドで複数のマッチングパターンを指定できます。 たとえば、 次のサンプルコマンドは、oss://examplebucket/exampledir/ ディレクトリからローカルの localdir/ ディレクトリにフィルター ルールに一致するファイルを再帰的にダウンロードします。フィルター ルールには、すべての |
--filter | 命令マッチングパターンはパラメーターに従います。各オプション値は単一のルールを表します。オプションを繰り返すことで、コマンドで複数のマッチングパターンを指定できます。 たとえば、
次のサンプルコマンドは、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+ パターンを使用する場合、
- **ルールはルールリストの末尾に追加されません。
例: --filter を使用して .jpg 拡張子を持つファイルのみを含めるルールを設定する必要がある場合、--filter "+ *.jpg" --filter "- **" と設定する必要があります。
--filter または --filter-from を --include、--include-from、--exclude、または --exclude-from と一緒に使用することはできません。
リストを使用したファイルまたはオブジェクトのフィルタリング
次の表で説明するオプションを使用して、フィルタリングするパス、オブジェクト名、またはファイル名のリストを含むファイルを指定できます。
オプション | 説明 |
--files-from | 指定されたリストファイルからパス、ファイル名、またはオブジェクト名を読み取ります。オプションを繰り返すことで、コマンドで複数のリストファイルを指定できます。 リストファイル内の各行を処理する際、先頭または末尾のスペースは削除され、 |
--files-from-raw | 指定されたリストファイルからパス、ファイル名、またはオブジェクト名を読み取ります。オプションを繰り返すことで、コマンドで複数のリストファイルを指定できます。 リストファイル内の各行を処理する際、先頭または末尾のスペースは無視されず、 |
パス、ファイル名、またはオブジェクト名のリストを使用してオブジェクトまたはファイルをフィルタリングする場合、コマンドで指定された他のタイプのフィルターは無視されます。
最終更新日時によるファイルまたはオブジェクトのフィルタリング
最終更新日時によってファイルまたはオブジェクトをフィルタリングできます。
相対時間フィルターと絶対時間フィルターを指定できます。次の表は、最終更新日時によってファイルまたはオブジェクトをフィルタリングするオプションについて説明しています。
パラメーター | 説明 | |
--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 (年)。
単位の前の数値は、1.5d (1 日半) のように 10 進数にすることができます。
次のサンプルコマンドは、最終更新が 3 日以上前のファイルまたはオブジェクトをリストします。
ossutil ls oss://bucket/ --min-age 3dデータサイズによるファイルまたはオブジェクトのフィルタリング
データサイズによってファイルまたはオブジェクトをフィルタリングして、サイズが指定された範囲内にあるファイルまたはオブジェクトを含めることができます。
次の表は、データサイズでファイルとオブジェクトをフィルタリングするために使用できるオプションについて説明しています。
パラメーター | 説明 |
--min-size | 含めることができるファイルまたはオブジェクトの最小サイズ。デフォルトでは、サイズはバイト (B) 単位です。数値の後に 1024 ベースのサイズ単位を指定できます (例: 1K (1,024 バイト))。 |
--max-size | 含めることができるファイルまたはオブジェクトの最大サイズ。デフォルトでは、サイズはバイト (B) 単位です。数値の後に 1024 ベースのサイズ単位を指定できます (例: 1K (1,024 バイト))。 |
追加の注意点:
次の短い形式のサイズ単位のいずれかを指定できます: B (バイト)、K (KiB)、M (MiB)、G (GiB)、T (TiB)、または P (PiB)。
単位の前の数値は、0.5K のように 10 進数にすることができます。
次のサンプルコマンドは、サイズが 1 MiB を超えないファイルまたはオブジェクトをリストします。
ossutil ls oss://bucket/ --max-size 1Mメタデータによるオブジェクトのフィルタリング
メタデータベースのフィルタリングは、バケット内のオブジェクトにのみ適用されます。パス、ファイル名、またはオブジェクト名でファイルまたはオブジェクトをフィルタリングするのと同様の方法で、メタデータによってオブジェクトをフィルタリングできます。
メタデータベースのフィルタリングでは、glob マッチングを使用し、メタデータフィルター ルールの key=value 表現が必要です。
次のオプションを使用して、メタデータによってオブジェクトをフィルタリングできます。
--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=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"