tencent cloud

Cloud Object Storage

最新情報とお知らせ
製品アップデート情報
製品のお知らせ
製品概要
製品概要
機能概要
応用シナリオ
製品の優位性
基本概念
リージョンとアクセスドメイン名
仕様と制限
製品の課金
課金概要
課金方式
課金項目
無料利用枠
記帳例
請求書の確認とダウンロード
お支払い遅れについて
よくある質問
クイックスタート
コンソールクイックスタート
COSBrowserクイックスタート
ユーザーガイド
リクエストの作成
バケット
オブジェクト
データ管理
バッチ処理
グローバルアクセラレーション
監視とアラーム
運用管理センター
データ処理
インテリジェントツールボックス使用ガイド
データワークフロー
アプリ統合
ツールガイド
ツール概要
環境のインストールと設定
COSBrowserツール
COSCLIツール
COSCMDツール
COS Migrationツール
FTP Serverツール
Hadoopツール
COSDistCpツール
HDFS TO COSツール
オンラインツール (Onrain Tsūru)
セルフ診断ツール
実践チュートリアル
概要
アクセス制御と権限管理
パフォーマンスの最適化
AWS S3 SDKを使用したCOSアクセス
データディザスタリカバリバックアップ
ドメイン名管理の実践
画像処理の実践
COSオーディオビデオプレーヤーの実践
データセキュリティ
データ検証
COSコスト最適化ソリューション
サードパーティアプリケーションでのCOSの使用
移行ガイド
サードパーティクラウドストレージのデータをCOSへ移行
データレークストレージ
クラウドネイティブデータレイク
メタデータアクセラレーション
データアクセラレーター GooseFS
データ処理
データ処理概要
画像処理
メディア処理
コンテンツ審査
ファイル処理
ドキュメントプレビュー
トラブルシューティング
RequestId取得の操作ガイド
パブリックネットワーク経由でのCOSへのファイルアップロード速度の遅さ
COSへのアクセス時に403エラーコードが返される
リソースアクセス異常
POST Objectの一般的な異常
セキュリティとコンプライアンス
データ災害復帰
データセキュリティ
クラウドアクセスマネジメント
よくある質問
よくあるご質問
一般的な問題
従量課金に関するご質問
ドメインコンプライアンスに関するご質問
バケット設定に関する質問
ドメイン名とCDNに関するご質問
ファイル操作に関するご質問
権限管理に関するご質問
データ処理に関するご質問
データセキュリティに関するご質問
署名付きURLに関するご質問
SDKクラスに関するご質問
ツール類に関するご質問
APIクラスに関するご質問
Agreements
Service Level Agreement
プライバシーポリシー
データ処理とセキュリティ契約
連絡先
用語集
ドキュメントCloud Object StorageツールガイドCOSCLIツールよく使用するコマンドファイルの同時アップロード・ダウンロードまたはコピー - sync

ファイルの同時アップロード・ダウンロードまたはコピー - sync

PDF
フォーカスモード
フォントサイズ
最終更新日: 2026-03-30 16:03:11
syncコマンドは、ファイルのアップロード・ダウンロード・コピーを同期させるときに使います。cpコマンドと異なる点は、syncコマンドはまず同名ファイルのcrc64を比較し、crc64の値が同じ場合は転送を行わない点です。
注意:
ファイルアップロードコマンドを使用するには、ポリシー許可を設定する際に、actionをcos:HeadBucketcos:GetBucketcos:HeadObjectcos:InitiateMultipartUploadcos:UploadPartcos:CompleteMultipartUploadcos:ListMultipartUploadscos:ListPartsに設定する必要があります。
ファイルダウンロードコマンドを使用するには、ポリシー許可を設定する際に、actionをcos:HeadBucketcos:GetBucketcos:HeadObjectcos:GetObjectに設定する必要があります。
ファイルコピーコマンドを使用するには、ポリシー許可を行う際に、ターゲットオブジェクトのアクションをcos:GetBucketcos:HeadObjectcos:InitiateMultipartUploadcos:PutObjectcos:CompleteMultipartUploadに、ソースオブジェクトのアクションはcos:HeadBucketcos:GetBucketcos:HeadObjectcos:GetObjectに設定する必要があります。
詳細な権限については、CAM対応APIをご参照ください。

コマンド形式

./coscli sync <source_path> <destination_path> [flag]
sync コマンドには以下のパラメータが含まれています。
パラメータの形式
パラメータの用途
source_path
ソースファイルのパス。ローカルパスまたは COS ファイルパスでもかまいません。COS パスは、構成パラメータ のバケットエイリアス、またはバケット名を使用してアクセスすることがサポートされています。 バケツ名でアクセスする場合は、さらに「endpoint」flagを追加する必要があります。
ローカルパス:~/example.txt
バケットエイリアスを使用して COS ファイルパスを指定する場合:cos://bucketalias/example.txt
バケット名で COS ファイルパスを指定する場合:cos://examplebucket-1250000000/example.txt
destination_path
ターゲットファイルパス。ローカルパスまたは COS ファイルパスでもかまいません。COS パスは、構成パラメータ のバケットエイリアス、またはバケット名を使用してアクセスすることがサポートされています。 バケツ名でアクセスする場合は、さらに「endpoint」flagを追加する必要があります。
ローカルパス:~/example.txt
バケットエイリアスを使用して COS ファイルパスを指定する場合:cos://bucketalias/example.txt
バケット名で COS ファイルパスを指定する場合:cos://examplebucket-1250000000/example.txt
syncコマンドには、以下のオプションflagが含まれます。
flagの略称
flagの正式名称
flagの用途
なし
--include
特定のモードを含むファイル(v1.0.4以前のバージョンではアップロード時にローカルファイル名のみをフィルタリングしていましたが、v1.0.4バージョン以降ではフルパスをフィルタリングします)
えば、./test 以下のすべてのファイルをCOSにアップロードする必要があり、./test には aaa フォルダが含まれ、aaa フォルダ内には1.txt ファイルが含まれています。
1.0.4より前のバージョンはaaa/1.txtにマッチします
1.0.4以降のバージョンは./test/aaa/1.txtにマッチします
なし
--exclude
特定のモードを除外したファイル(v1.0.4以前のバージョンではアップロード時にローカルファイル名のみをフィルタリングしていましたが、v1.0.4バージョン以降ではフルパスをフィルタリングします)
えば、./test 以下のすべてのファイルをCOSにアップロードする必要があり、./test には aaa フォルダが含まれ、aaa フォルダ内には1.txt ファイルが含まれています。
1.0.4より前のバージョンはaaa/1.txtにマッチします
1.0.4以降のバージョンは./test/aaa/1.txtにマッチします
-r
--recursive
フォルダ内のすべてのファイルを再帰的にトラバーサル処理するかどうか
なし
--storage-class
アップロードされるファイルのストレージタイプを指定します(デフォルトは STANDARD)。その他のストレージタイプについては、ストレージタイプの概要を参照してください。
なし
--part-size
ファイルのチャンクサイズ(単位:MB)、デフォルト値は32、最大5120までサポートします。ファイルサイズに基づいてチャンクサイズを自動的に調整する必要がある場合は、0に設定してください。
なし
--thread-num
同時実行スレッド数(デフォルトの同時実行は5)
なし
--rate-limiting
シングルリンクレート制限(0.1~100MB/s)
なし
--snapshot-path
ファイルのアップロードまたはダウンロード時のスナップショット情報が保存されるディレクトリを指定します。次にファイルがアップロードまたはダウンロードされる際に、coscli は指定されたディレクトリのスナップショット情報を読み込んで、増分的にアップロードまたはダウンロードを行います。このオプションは、ディレクトリファイルの同期を高速化するために使用されます。
なし
--meta
アップロードされたファイルのメタ情報。これには HTTP 標準属性(HTTP Header)の一部と、x-cos-meta- で始まるユーザー定義メタデータ(User Meta)が含まれています。ファイルメタ情報の形式は header:value#header:valueであり、その例は Expires:2022-10-12T00:00:00.000Z#Cache-Control:no-cache#Content-Encoding:gzip#x-cos-meta-x:xです。
なし
--routines
ファイル間の並列アップロードまたはダウンロードスレッドのファイル数を指定します。デフォルトは3
なし
--fail-output
になります。このオプションは、アップロードまたはダウンロードが失敗した時にファイルのエラー出力を有効にするかどうかを決定します(デフォルトはtrueで、有効になる)。有効にすると、ファイル転送の失敗が指定したディレクトリに記憶されます(指定しない場合はデフォルトで./coscli_outputになる)。無効にすると、エラーファイルの数だけがコンソールに出力されます。
なし
--fail-output-path
このオプションは、アップロードまたはダウンロードに失敗したファイルのエラー出力を記憶するフォルダを指定するために使用されます。カスタムフォルダパスを指定することで、エラー出力フォルダの場所と名前を管理できます。このオプションが設定されていない場合は、デフォルトのエラーログフォルダ./coscli_outputが使用されます。
なし
--retry-num
リトライ回数を制限します(デフォルトは0で、リトライしない)。1-10回から選択できます。複数のデバイスが同じ COS ディレクトリに対して同時にダウンロード操作を行う場合、このパラメータを指定してリトライすることで、頻度制限エラーを回避することができます。
なし
--err-retry-num
エラーの場合のリトライ回数(デフォルトは5である)。1-10回を指定するか、リトライしない場合は0に設定します。
なし
--err-retry-interval
リトライ間隔(--err-retry-num1-10に指定されている場合のみ利用可能)。リトライ間隔を1-10秒で指定します。指定しないか、0に設定した場合は、各リトライ間隔は1-10秒の範囲でランダムになります。
なし
--only-current-dir
カレントディレクトリ内のファイルのみをアップロードし、サブディレクトリとその内容を無視するかどうか (デフォルトはfalseで、無視しない)。
なし
--disable-all-symlink
アップロード時にすべてのソフトリンクのサブファイルとソフトリンクのサブディレクトリを無視するかどうか (デフォルトはtrueで、アップロードしない)。現在、LinuxおよびmacOSシステムのみサポートされています。
なし
--enable-symlink-dir
ソフトリンクのサブディレクトリをアップロードするかどうか (デフォルトはfalseで、アップロードしない)。現在、LinuxおよびmacOSシステムのみサポートされています。
なし
--disable-crc64
CRC64 データ検証を無効にするかどうか(デフォルトはfalseで、検証を有効にする)。
なし
--delete
指定されたターゲットパスにある他のファイルを削除し、今回同期されたファイルのみを残します(デ フォルトはfalseで、削除しない)。誤ってデータを削除しないように、--deleteオプションを使用する前にバージョン管理を有効にすることを推奨します。
なし
--backup-dir
削除されたファイルのバックアップを同期し、ターゲット側で削除され、ソース側には存在しないファイルの保存に使用されます(ダウンロードする時のみ有効で、--delete=true の時に必ず伝送する)。アップロードとバケットコピーは、バージョン管理を使用して誤って削除されたデータを復元してください。
なし
--force
確認のプロンプトを出さずに操作を強制します(デフォルトはfalse)。
なし
--disable-checksum
デフォルトはtrueで、シャードのCRC64のみを検証します。falseに設定すると、ファイル全体のCRC64を検証します。(coscli V1.0.6以前のバージョンではデフォルトはfalseです)
なし
--process-log
プロセスログを有効にするかどうか。デフォルトはtrueで有効です
なし
--process-log-path
このオプションは、プロセスログを保存するための専用出力フォルダを指定するために使用します。ログには、エラーログ、正常実行ログ、リトライなどの詳細を含む、ファイルのアップロードまたはダウンロードに関する情報が記録されます。カスタムのフォルダパスを指定することで、ログ出力フォルダの場所と名前を制御できます。このオプションが設定されていない場合は、デフォルトのログフォルダ(coscli_output)が使用されます。
なし
--update
変更時間が新しいファイルのみを転送する
なし
--ignore-existing
存在しないファイルのみを転送
なし
--skip-dir
デフォルトではfalseです。trueに設定すると、転送時にフォルダをスキップします。
なし
--acl
ファイルのACLを設定します。例:private、public-read
なし
--grant-read
権限を付与されるユーザーに、オブジェクトの読み取り権限を与えます。形式はid="[OwnerUin]"、例:id="100000000001"。半角カンマ(,)で区切って複数のユーザーを指定できます。例:id="100000000001",id="100000000002" 。
なし
--grant-read-acp
権限を付与されるユーザーに、オブジェクトのアクセス制御リスト(ACL)の読み取り権限を与えます。形式はid="[OwnerUin]"、例:id="100000000001"。半角カンマ(,)で区切って複数のユーザーを指定できます。例:id="100000000001",id="100000000002" 。
なし
--grant-write-acp
権限を付与されるユーザーに、オブジェクトのアクセス制御リスト(ACL)の書き込み権限を与えます。形式はid="[OwnerUin]"、例:id="100000000001"。半角カンマ(,)で区切って複数のユーザーを指定できます。例:id="100000000001",id="100000000002" 。
なし
--grant-full-control
権限を付与されるユーザーに、オブジェクトを操作するすべての権限を与えます。形式はid="[OwnerUin]"、例:id="100000000001"。半角カンマ(,)で区切って複数のユーザーを指定できます。例:id="100000000001",id="100000000002" 。
なし
--tags
オブジェクトのタグセット。最大10個のタグを設定できます(例:--tags="Key1=Value1&Key2=Value2")
なし
--forbid-overwrite
バージョニングが有効でないバケットに対し、アップロード時に同名オブジェクトの上書きを禁止するかどうかを指定します。
falseを指定した場合、デフォルトで同名オブジェクトを上書きします。
trueを指定した場合、同名オブジェクトの上書きを禁止します。
バケットのバージョニングが有効または一時停止中の状態である場合、x-cos-forbid-overwriteリクエストヘッダーの設定は無効となり、同名オブジェクトの上書きが許可されます。
なし
--encryption-type
サーバーサイド暗号化の方式(SSE-COS/SSE-C)。
なし
--server-side-encryption
サーバーサイド暗号化アルゴリズム。AES256、cos/kmsをサポートします。
SSE-COSまたはSSE-KMSを使用する場合、このフィールドは必須項目です。
なし
--sse-customer-algo
サーバーサイド暗号化アルゴリズム。AES256をサポートします。
SSE-Cを使用する場合、このフィールドは必須項目です。
なし
--sse-customer-key
サーバーサイド暗号化キーのBase64エンコード。
例:MDEyMzQ1Njc4OUFCQ0RFRjAxMjM0NTY3ODlBQkNERUY=。
SSE-Cを使用する場合、このフィールドは必須項目です。
なし
--sse-customer-key-md5
サーバーサイド暗号化キーのMD5ハッシュ値。Base64でエンコードされています。
例:U5L61r7jcwdNvT7frmUG8g==。
SSE-Cを使用する場合、このフィールドは必須項目です
なし
--check-point
レジュームアップロードを有効にするかどうか。デフォルトではtrueで有効です。
説明:
コマンドを使用する際は、ツールがローカルパスにアクセスする権限があることを確認してください。
syncコマンドは、大容量ファイルのアップロードやダウンロードを行う場合、アップロード/ダウンロードの同時実行を自動的に有効にします。
ファイルが --part-size よりも大きい場合、COSCLIはまず --part-size に従ってファイルをチャンクにし、次に --thread-num 個のスレッドを使用してアップロード/ダウンロードのタスクを同時に実行します。
各スレッドは1つのリンクを維持します。各リンクに対して--rate-limitingパラメータを使用すると、シングルリンクのレート制限ができます。同時アップロード/ダウンロードが有効な場合、合計レートは、--thread-num * --rate-limitingとなります。
ファイルをチャンクでアップロード/ダウンロードする場合、デフォルトで中断からの再開が有効になります。
--includeと --exclude は標準的な正規表現の構文をサポートしており、これを使えば特定の条件を満たすファイルをフィルタリングすることができます。
デフォルトでは、ソフトリンクはアップロードされません。ソフトリンクをアップロードするには、設定 --disable-all-symlink=false--enable-symlink-dir=trueで済みます。注:ソフトリンクにループ参照が存在する場合、ツールがデッドループ状態になる可能性があります。
zshを使用する場合、pattern 文字列の両端に二重引用符を付ける必要がある場合があります。
snapshot-path を、移動するディレクトリまたはそのサブディレクトリに設定しないでください。
./coscli sync ~/test/ cos://bucket1/example/ -r --include ".*\\.txt$" --snapshot-path=/path/snapshot-path --meta=x-cos-meta-a:a#ContentType:text#Expires:2022-10-12T00:00:00.000Z
sync コマンドを使用する際に PUT リクエスト料金が発生することに加え、以下の 2 つのケースではクラウド上のファイルに対する HEAD リクエスト料金が発生し、追加の料金が発生することがあります。
スナップショットディレクトリを指定するためのパラメータ (--snapshot-path) が追加されていない場合、HEAD リクエスト料金が発生します。
指定されたスナップショットディレクトリパラメータ(--snapshot-path)が追加され、スナップショットディレクトリが初めて生成される場合、HEAD リクエスト料金が発生します。初めて生成されるスナップショットディレクトリでない場合は追加のリクエスト料金は発生しません。
このコマンドのその他の一般的なオプション(バケットの切り替え、ユーザーアカウントの切り替えなど)については、一般オプション ドキュメンテーションを参照してください。

操作事例

ファイルの同時アップロード

./coscli sync ~/example.txt cos://bucket1/example.txt

ファイルの同時ダウンロード

./coscli sync cos://bucket1/example.txt ~/example.txt

バケット内でのファイル同期コピー

./coscli sync cos://bucket1/example.txt cos://bucket1/example_copy.txt

バケット間でのファイル同期コピー

./coscli sync cos://bucket1/example.txt cos://bucket2/example_copy.txt

ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック