pip
コマンドを実行してインストールします。pip install coscmd
-v
または--version
コマンドを使用して、現在のバージョン情報を確認することができます。C:\\python_install_dir;
とC:\\python_install_dir\\Scripts
という2つのパスを追加する必要があります。 pip install coscmd -U
git clone https://github.com/tencentyun/coscmd.gitcd coscmdpython setup.py install
# パブリックネットワークを備えたマシンで次のコマンドを実行しますmkdir coscmd-packagespip download coscmd -d coscmd-packagestar -czvf coscmd-packages.tar.gz coscmd-packages# インストールパッケージをパブリックネットワークのないマシンにコピーしてから、次のコマンドを実行しますtar -xzvf coscmd-packages.tar.gzpip install coscmd --no-index -f coscmd-packages
-h
または--help
コマンドを使用して、ツールのhelp情報や使用方法を確認することができます。coscmd -h
usage: coscmd [-h] [-d] [-s] [-b BUCKET] [-r REGION] [-c CONFIG_PATH][-l LOG_PATH] [--log_size LOG_SIZE][--log_backup_count LOG_BACKUP_COUNT] [-v]{config,upload,download,delete,abort,copy,move,list,listparts,info,restore,signurl,createbucket,deletebucket,putobjectacl,getobjectacl,putbucketacl,getbucketacl,putbucketversioning,getbucketversioning,probe}...an easy-to-use but powerful command-line tool. try 'coscmd -h' to get moreinformations. try 'coscmd sub-command -h' to learn all command usage, likes'coscmd upload -h'positional arguments:{config,upload,download,delete,abort,copy,move,list,listparts,info,restore,signurl,createbucket,deletebucket,putobjectacl,getobjectacl,putbucketacl,getbucketacl,putbucketversioning,getbucketversioning,probe}config Config your information at firstupload Upload file or directory to COSdownload Download file from COS to localdelete Delete file or files on COSabort Aborts upload parts on COScopy Copy file from COS to COSmove move file from COS to COSlist List files on COSlistparts List upload partsinfo Get the information of file on COSrestore Restoresignurl Get download urlcreatebucket Create bucketdeletebucket Delete bucketputobjectacl Set object aclgetobjectacl Get object aclputbucketacl Set bucket aclgetbucketacl Get bucket aclputbucketversioningSet the versioning stategetbucketversioningGet the versioning stateprobe Connection testoptional arguments:-h, --help show this help message and exit-d, --debug Debug mode-s, --silence Silence mode-b BUCKET, --bucket BUCKETSpecify bucket-r REGION, --region REGIONSpecify region-c CONFIG_PATH, --config_path CONFIG_PATHSpecify config_path-l LOG_PATH, --log_path LOG_PATHSpecify log_path--log_size LOG_SIZE specify max log size in MB (default 1MB)--log_backup_count LOG_BACKUP_COUNTspecify log backup num-v, --version show program's version number and exit
-h
を入力すると、そのコマンドの具体的な使用法を確認することができます。次に例を示します。coscmd upload -h //コマンドの使用方法を確認します
~/.cos.conf
から設定項目を読み込みます。[common]secret_id = AKIDA6wUmImTMzvXZNbGLCgtusZ2E8mG****secret_key = TghWBCyf5LIyTcXCoBdw1oRpytWk****bucket = configure-bucket-1250000000region = ap-chengdumax_thread = 5part_size = 1retry = 5timeout = 60schema = httpsverify = md5anonymous = False
schema
項目で、オプション値はhttp、https、デフォルトはhttpsです。anonymous
項目で、オプション値はTrue、False、匿名モードを使用するかどうか、つまり署名を空にするかどうかを示します。coscmd config -h
を使用して確認してください。~/.cos.conf
に設定ファイルを自動的に発行します。コマンド形式は次のとおりです。coscmd config [OPTION]...<FILE>...[-h] --help[-a] <SECRET_ID>[-s] <SECRET_KEY>[-t] <TOKEN>[-b] <BucketName-APPID>[-r] <REGION> | [-e] <ENDPOINT>[-m] <MAX_THREAD>[-p] <PART_SIZE>[--do-not-use-ssl][--anonymous]
オプション | パラメータ説明 | 有効値 | 入力必須かどうか |
-a | 文字列 | はい | |
-s | 文字列 | はい | |
-t | 一時キーtokenは、一時キーを使用するときに設定が必要で、x-cos-security-tokenヘッダーを設定します | 文字列 | いいえ |
-b | 指定されたバケット名。バケットの命名形式はBucketName-APPIDです。命名ルールをご参照ください。初回設定時に使用する場合、COSコンソールでバケットを作成し、設定ツールとして用いる必要があります | 文字列 | はい |
-r | 文字列 | はい | |
-e | リクエストのENDPOINTを設定します。ENDPOINTパラメータを設定すると、REGIONパラメータは無効になります。デフォルトのドメイン名を使用している場合、ここでの設定形式は、 cos.<region>.myqcloud.com となります。グローバルアクセラレーションドメイン名を使用する場合、設定はcos.accelerate.myqcloud.com となります | 文字列 | いいえ |
-m | マルチスレッド操作の最大スレッド数(デフォルトは5、範囲は1~30) | 数値 | いいえ |
-p | チャンク操作の1チャンクサイズ(MB単位、デフォルトは1MB、範囲は1~1000) | 数値 | いいえ |
--do-not-use-ssl | HTTPSではなく、HTTPプロトコルを使用します | 文字列 | いいえ |
--anonymous | 匿名操作(署名なし) | 文字列 | いいえ |
coscmd config -a AChT4ThiXAbpBDEFGhT4ThiXAbp**** -s WE54wreefvds3462refgwewe**** -b configure-bucket-1250000000 -r ap-chengdu
-b <BucketName-APPID>
パラメータでバケット名を指定します。バケットの命名形式はBucketName-APPIDです。ここに入力するバケット名は、必ずこの形式である必要があります。-r <region>
でRegionを指定すると、バケットの所属リージョンを指定することができます。coscmd -b <BucketName-APPID> -r <region> <action> ...
coscmd -b examplebucket-1250000000 -r ap-beijing createbucket
coscmd -b examplebucket-1250000000 -r ap-beijing upload D:/picture.jpg /
~/.cos.conf
が使用されます。ログファイルパスが指定されない場合、デフォルトのログファイルパス~/.cos.log
が使用されます。-c <conf_path>
パラメータで設定ファイルパスを指定すると、COSCMDは実行時にこのパスから設定情報を読み込むようになります。-l <log_conf>
パラメータでログパスを指定すると、COSCMDは実行中に生成されたログをこのパスのログファイルに出力します。coscmd -c <conf_path> -l <log_conf> <action> ...
coscmd -c /data/home/cos_conf -l /data/home/cos_log -b examplebucket-1250000000 -r ap-beijing createbucket
-d
または--debug
を追加すると、コマンドの実行中に詳細な操作情報が表示されます。次に例を示します。coscmd -d upload <localpath> <cospath>
coscmd -d upload -rs D:/folder/ /
-s
または--silence
を追加すると、コマンドの実行中にいかなる情報も出力されなくなります。coscmd -s upload <localpath> <cospath>
coscmd -s upload D:/picture.jpg /
-b <BucketName-APPID>と所属リージョンを指定するパラメータ
-r <Region>`を付けてください。coscmd createbucketを直接実行した場合、バケット名と所属リージョンを指定しないと、既存のバケット(パラメータ設定時に入力したバケット)を作成したのと同じことになるため、エラーが発生します。coscmd -b <BucketName-APPID> createbucket
coscmd -b examplebucket-1250000000 -r ap-beijing createbucket
coscmd deletebucket
の使用法は、パラメータを設定する際にストレージバケットに対してのみ有効です。-b <BucketName-APPID>
でBucketを指定し、-r <region>
でRegionを指定することをお勧めします。coscmd -b <BucketName-APPID> deletebucket
coscmd -b examplebucket-1250000000 -r ap-beijing deletebucket
coscmd -b examplebucket-1250000000 -r ap-beijing deletebucket -f
-f
パラメータを使用すると、すべてのファイルやバージョン管理を有効にした後の履歴フォルダ、アップロードによって生成されたフラグメントを含むバケットが強制的に削除されますので、操作は慎重に行ってください。coscmd upload <localpath> <cospath>
coscmd upload D:/picture.jpg doc/
coscmd upload D:/doc/picture.jpg doc/
coscmd upload D:/picture.jpg doc/ -H "{'x-cos-storage-class':'Archive'}"
coscmd upload -H "{'x-cos-storage-class':'Archive','Content-Language':'zh-CN'}" <localpath> <cospath>
。その他のヘッダーについては、PUT Objectのドキュメントをご参照ください。coscmd upload D:/picture.jpg doc/ -H "{'x-cos-meta-example':'example'}"
coscmd upload -r <localpath> <cospath>
coscmd upload -r D:/doc /
coscmd upload -r D:/doc doc
coscmd upload -rs D:/doc doc
coscmd upload -rs --skipmd5 D:/doc doc
coscmd upload -rs --delete D:/doc /
coscmd upload -rs D:/doc / --ignore *.txt,*.doc
coscmd upload -rs D:/doc / --ignore "*.txt"
--ignore
パラメータを使用すると、いずれかのタイプのファイルを無視することができます。--include
パラメータを使用すると、いずれかのタイプのファイルをフィルタリングすることができます。shellワイルドカードルールや複数のルールをサポートし、カンマ,
で区切ります。いずれかの種類の拡張子を無視する場合は、最後に,
を入力するか、""
を追加する必要があります。""
の中に複数のカンマ区切りルールが含まれる場合は、最初のルールに準じます。--ignore
を使用して特定のフォルダ内のすべてのファイルをフィルタリングしたい場合は、絶対パスを使用し、パスの前後に""
を追加する必要があります。例えば、coscmd upload -rs D:/doc / --ignore "D:/doc/ignore_folder/*"
などとします。coscmd upload -rs D:/doc / --include *.txt,*.doc
coscmd upload -rs D:/doc / --include "*.txt"
coscmd upload <localpath> <cospath>
です。x-cos-meta-md5
というヘッダーが付きます。これはこのファイルのmd5値となりますが、--skipmd5パラメータがある場合、 このヘッダーは付きません。coscmd list <cospath>
coscmd list doc/
coscmd list -ar
coscmd list examplefolder/ -ar
coscmd list -v
<cospath>
が空の場合は、デフォルトで現在のバケットルートディレクトリを照会します。-a
を使用してすべてのファイルを照会します。-r
を使用して再帰的に照会すると、リストアップされたファイルの数とサイズの合計が末尾に返されます。-n num
を使用して、照会の最大値を設定します。coscmd info <cospath>
coscmd info doc/picture.jpg
「<>」内のパラメータを、表示させる必要のあるCOS上のファイルのパス(cospath)に置き換えてください。
coscmd download <cospath> <localpath>
coscmd download doc/picture.jpg D:/picture.jpg
coscmd download doc/picture.jpg D:/
coscmd download picture.jpg --versionId MTg0NDUxMzc2OTM4NTExNTg7Tjg D:/
coscmd download -r <cospath> <localpath>
coscmd download -r doc D:/folder/
coscmd download -r / D:/ --ignore "doc/*"
coscmd download -rf / D:/examplefolder/
-f
パラメータを使用してローカルファイルを上書きする必要があります。coscmd download -rs / D:/examplefolder
-s
または--sync
を使用すると、フォルダをダウンロードする際に、すでにローカルに存在する同一ファイルをスキップすることができます(ただし、ダウンロードするファイルがCOSCMDのuploadインターフェース経由でアップロードされたもので、そのファイルにx-cos-meta-md5
ヘッダーがふくまれることが前提条件です)。coscmd download -rs --skipmd5 / D:/examplefolder
coscmd download -rs --delete / D:/examplefolder
coscmd download -rs / D:/examplefolder --ignore *.txt,*.doc
coscmd download -rs / D:/examplefolder --ignore "*.txt"
--ignore
パラメータを使用すると、いずれかのタイプのファイルを無視することができます。--include
パラメータを使用すると、いずれかのタイプのファイルをフィルタリングすることができます。shellワイルドカードルールや複数のルールをサポートし、カンマ,
で区切ります。いずれかの種類の拡張子を無視する場合は、最後に,
を入力するか、""
を追加する必要があります。""
の中に複数のカンマ区切りルールが含まれる場合は、最初のルールに準じます。--ignore
を使用して特定のディレクトリ内のすべてのファイルをフィルタリングしたい場合は、絶対パスを使用し、パスの前後に""
を追加する必要があります。例えば、coscmd upload -rs D:/doc / --ignore "D:/doc/ignore_folder/*"
などとします。coscmd download -rs / D:/examplefolder --include *.txt,*.doc
coscmd download -rs / D:/examplefolder --include "*.txt"
coscmd signurl <cospath>
coscmd signurl doc/picture.jpg
coscmd signurl doc/picture.jpg -t 100
-t time
を使用して、このURLの署名の有効期間(単位は秒)を設定します。デフォルトは10000sです。coscmd delete <cospath>
「<>」内のパラメータを、削除する必要のあるCOS上のファイルのパス(cospath)に置き換えてください。ツールは、削除操作を確認するようユーザーに促します。
coscmd delete doc/exampleobject.txt
coscmd delete doc/exampleobject.txt --versionId MTg0NDUxMzc4ODA3NTgyMTErEWN
coscmd delete -r <cospath>
coscmd delete -r doc
coscmd delete -r folder/doc
coscmd delete -r doc/ --versions
y
を入力して確定する必要がありますが、-f
パラメータを使用すると確認をスキップして直接削除することができます。coscmd listparts <cospath>
coscmd listparts doc/
coscmd abort
coscmd abort
coscmd copy <sourcepath> <cospath>
coscmd -b examplebucket-1250000000 -r ap-chengdu copy examplebucket-1250000000.ap-chengdu.myqcloud.com/picture.jpg doc/
coscmd -b examplebucket1-1250000000 -r ap-guangzhou copy examplebucket2-1250000000.ap-beijing.myqcloud.com/doc/picture.jpg doc/examplefolder/
coscmd -b examplebucket1-1250000000 -r ap-guangzhou copy examplebucket2-1250000000.ap-beijing.myqcloud.com/doc/picture.jpg doc/examplefolder/ -H "{'x-cos-storage-class':'STANDARD_IA'}"
coscmd -b examplebucket1-1250000000 -r ap-guangzhou copy examplebucket2-1250000000.ap-beijing.myqcloud.com/doc/picture.jpg doc/examplefolder/photo.jpg -H "{'x-cos-storage-class':'Archive'}"
coscmd copy -r <sourcepath> <cospath>
coscmd -b examplebucket1-1250000000 -r ap-guangzhou copy -r examplebucket2-1250000000.cos.ap-guangzhou.myqcloud.com/examplefolder doc/
<BucketName-APPID>.cos.<region>.myqcloud.com/<cospath>
です。x-cos-metadata-directive
パラメータを設定します。オプション値はCopyとReplacedで、デフォルトはCopyです。coscmd copy -H -d Replaced "{'x-cos-storage-class':'Archive','Content-Language':'zh-CN'}" <localpath> <cospath>
。その他のヘッダーについては、PUT Object - Copyのドキュメントをご参照ください。はと同一にすることはできません。同一にした場合はファイルが削除されます。moveコマンドは先にコピーを行ってから削除するため、
`パスのファイルが最終的に削除されることが原因です。coscmd move <sourcepath> <cospath>
coscmd -b examplebucket-1250000000 -r ap-chengdu move examplebucket-1250000000.ap-chengdu.myqcloud.com/picture.jpg doc/
coscmd -b examplebucket1-1250000000 -r ap-guangzhou move examplebucket2-1250000000.ap-beijing.myqcloud.com/picture.jpg doc/folder/
coscmd -b examplebucket1-1250000000 -r ap-guangzhou move examplebucket2-1250000000.ap-beijing.myqcloud.com/picture.jpg doc/folder/ -H "{'x-cos-storage-class':'STANDARD_IA'}"
coscmd -b examplebucket1-1250000000 -r ap-guangzhou move examplebucket2-1250000000.ap-beijing.myqcloud.com/data/exampleobject data/examplefolder/exampleobject -H "{'x-cos-storage-class':'Archive'}"
coscmd move -r <sourcepath> <cospath>
coscmd -b examplebucket1-1250000000 -r ap-guangzhou move -r examplebucket2-1250000000.cos.ap-guangzhou.myqcloud.com/examplefolder doc/
<BucketName-APPID>.cos.<region>.myqcloud.com/<cospath>
です。x-cos-metadata-directive
パラメータを設定します。オプション値はCopyとReplacedで、デフォルトはCopyです。coscmd move -H -d Replaced "{'x-cos-storage-class':'Archive','Content-Language':'zh-CN'}" <localpath> <cospath>
。その他のヘッダーについては、PUT Object - copyのドキュメントをご参照ください。coscmd putobjectacl --grant-<permissions> <UIN> <cospath>
coscmd putobjectacl --grant-read 100000000001 picture.jpg
coscmd getobjectacl picture.jpg
coscmd putbucketversioning <status>
coscmd putbucketversioning Enabled
coscmd putbucketversioning Suspended
coscmd getbucketversioning
coscmd restore <cospath>
coscmd restore -d 3 -t Expedited picture.jpg
coscmd restore -r <cospath>
coscmd restore -r -d 3 -t Expedited examplefolder/
-d <day>
を使用して、一時コピーの有効期限を設定します。デフォルト値は7です。-t <tier>
を使用してリカバリモードを指定します。列挙値はExpedited (高速取得モード)、Standard (標準取得モード)、Bulk(一括取得モード)であり、デフォルト値はStandardです。
この記事はお役に立ちましたか?