sync コマンドは、ローカルファイルを OSS に同期します。
注意
ローカルファイルを OSS に同期するには、oss:PutObject、oss:ListObjects、および oss:DeleteObject 権限が必要です。 詳細については、「RAM ユーザーにカスタム権限を付与する」をご参照ください。
sync コマンドと cp コマンドの違い
sync コマンドは [--delete] オプションをサポートしています。 このオプションは、コピー先には存在するがコピー元には存在しないファイルを削除します。 cp コマンドは [--delete] オプションをサポートしていません。
sync コマンドは、ファイルをコピーする前にコピー元とコピー先の両方をスキャンします。 cp コマンドは、コピー元をスキャンして同時にファイルをコピーします。
sync コマンドは、デフォルトで 200 万個、最大で 500 万個のソースファイルを同期できます。 cp コマンドには、ソースファイルの数に制限はありません。
コマンド形式
ossutil sync file_url cloud_urlパラメーター | タイプ | 説明 |
file_url | string | 同期するオンプレミスフォルダのパス。 たとえば、Linux のパスは |
cloud_url | string | OSS フォルダのパス。 パスの形式は |
--acl | string | オブジェクトのアクセス制御リスト (ACL)。 有効な値:
|
--backup-dir | string | バックアップファイルが保存されるディレクトリ。 |
--bigfile-threshold | int | 大きいファイルのマルチパートアップロード、ダウンロード、またはコピーを有効にするしきい値。 デフォルト値は 104857600 バイトです。 |
--cache-control | string | オブジェクトがダウンロードされるときの Web ページのキャッシュ動作を指定します。 |
--checkpoint-dir | string | 再開可能な操作のチェックポイント情報を格納するディレクトリ。 デフォルト値は |
--checksum | / | サイズまたはチェックサム (存在する場合) がコピー先ファイルと異なるソースファイルのみをコピーします。 このオプションは、オブジェクト間のコピーにのみ有効です。 |
--content-disposition | string | オブジェクトの表示方法を指定します。 |
--content-encoding | string | オブジェクトのエンコード形式を指定します。 |
--content-type | string | オブジェクトのコンテンツタイプ。 |
--copy-props | string | ソースオブジェクトからコピーするプロパティを指定します。 有効な値:
|
--delete | / | コピー先には存在するがコピー元には存在しないファイルを削除します。 |
-d, --dirs | / | すべてのサブディレクトリ内のすべてのファイルを再帰的に表示する代わりに、現在のディレクトリ内のファイルとサブディレクトリを返します。 |
--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 操作を使用してオブジェクトをリストします。 |
--min-age | Duration | 指定された時間間隔より前に変更されたファイルのみを転送します。 デフォルトの単位は秒です。 1 時間を表す 1h などの単位サフィックスを使用できます。 説明
|
--max-age | Duration | 指定された時間間隔内に変更されたファイルのみを転送します。 デフォルトの単位は秒です。 1 時間を表す 1h などの単位サフィックスを使用できます。 説明
|
--min-mtime | Time | 指定された時刻より後に変更されたファイルのみを転送します。 時刻は UTC 形式である必要があります。 例: 2006-01-02T15:04:05。 説明
|
--max-mtime | Time | 指定された時刻より前に変更されたファイルのみを転送します。 時刻は UTC 形式である必要があります。 例: 2006-01-02T15:04:05。 |
--max-size | SizeSuffix | 転送するファイルの最大サイズ。 デフォルトの単位はバイトです。 B、K、M、G、T、P などの単位サフィックスを使用できます。 1 K (KiB) = 1024 B。 |
--max-sync-num | int | 同期するファイルまたはオブジェクトの最大数。 デフォルト値は 2000000 です。 値は 5000000 を超えることはできません。 |
--metadata | strings | オブジェクトのユーザーメタデータを指定します。 key=value 形式を使用します。 |
--metadata-directive | string | コピー先オブジェクトのメタデータの設定方法を指定します。 有効な値:
|
--metadata-exclude | stringArray | オブジェクトのメタデータを除外するルール。 |
--metadata-filter | stringArray | オブジェクトのメタデータをフィルターするルール。 |
--metadata-filter-from | stringArray | ルールファイルからオブジェクトのメタデータフィルターリングルールを読み取ります。 |
--metadata-include | stringArray | オブジェクトのメタデータを含めるルール。 |
--min-size | SizeSuffix | 転送するファイルの最小サイズ。 デフォルトの単位はバイトです。 B、K、M、G、T、P などの単位サフィックスを使用できます。 1 K (KiB) = 1024 B。 |
--no-progress | / | プログレスバーを表示しません。 |
--page-size | int | バッチ操作でページごとにリストするオブジェクトの最大数。 デフォルト値は 1000 です。 値の範囲は 1 から 1000 です。 |
--parallel | int | 単一ファイル内の操作の同時タスク数。 |
--part-size | SizeSuffix | パートサイズ。 デフォルトでは、ossutil はファイルサイズに基づいて適切なパートサイズを計算します。 値の範囲は 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 | / | 既に存在するコピー先ファイルをスキップします。 |
詳細については、「コマンドラインオプション」をご参照ください。
例
オンプレミスの localfolder フォルダを OSS に同期します。
ossutil sync D:/localfolder/ oss://examplebucket/destfolder/オンプレミスの localfolder フォルダ内の .txt ファイルを OSS に同期します。
ossutil sync D:/localfolder/ oss://examplebucket/destfolder/ --include "*.txt"オンプレミスの localfolder フォルダから .txt ファイルを除くすべてのファイルを OSS に同期します。
ossutil sync D:/localfolder/ oss://examplebucket/destfolder/ --exclude "*.txt"オンプレミスフォルダを OSS に同期し、指定された OSS パスには存在するがオンプレミスフォルダには存在しないファイルを削除します。
--delete オプションを追加して、コピー先には存在するがコピー元には存在しないファイルを削除します。 この操作では、現在の同期のファイルのみが保持されます。
ossutil sync D:/localfolder/ oss://examplebucket/destfolder/ --delete