このトピックでは、rm
コマンドを実行して、不要な課金を回避するために不要になったオブジェクト、パーツ、またはバケットを削除する方法について説明します。
使用上の注意
このトピックでは、64ビットLinuxシステムに基づくサンプルコマンドラインを提供します。 他のシステムの場合は、を交換します。特定のバイナリ名を持つコマンドの /ossutil64。 詳細については、「ossutil」をご参照ください。
コマンド構文
. /ossutil64 rm oss:// bucketname[/prefix]
[-r, -- recursive]
[-b, -- bucket]
[-m, -- multipart]
[-a, -- all-type]
[-f, -- force]
[-- include <value>]
[-- exclude <value>]
[-- version-id <value>]
[-- すべてのバージョン]
[-- payer <value>]
[-- encoding-type <value>]
次の表に、rmコマンドを実行するために設定できるパラメーターとオプションを示します。
項目 | 説明 |
bucketname | 削除するバケットまたは削除するリソースを格納するバケットの名前。 |
プレフィックス | 指定されたプレフィックスを名前に含むバケット内のリソース (ディレクトリやオブジェクトなど) 。 |
-r, -- recursive | このオプションを指定すると、指定されたプレフィックスを名前に含むすべてのオブジェクトがバケットから削除されます。 このオプションを指定しないと、指定したオブジェクトのみが削除されます。 |
-b, -- bucket | コマンドを実行してバケットを削除することを指定します。 このオプションは、バケットを削除する場合にのみ必要です。 |
-m, -- multipart | バケット内の不完全なマルチパートアップロードタスクによって作成されたデータに対して操作を実行することを指定します。 |
-a, -- all-type | バケット内の不完全なマルチパートアップロードタスクによって作成された指定されたプレフィックスとデータを名前に含むオブジェクトに対して操作を実行することを指定します。 |
-f, -- force | 強制的に実行する操作を指定します。 操作は確認のプロンプトなしで実行されます。 |
-含める | コマンドが指定された条件を満たすすべてのオブジェクトに適用されることを指定します。 詳細は、「オプションの表示」をご参照ください。 |
-除外 | 指定された条件を満たさないすべてのオブジェクトにコマンドが適用されることを指定します。 詳細は、「オプションの表示」をご参照ください。 |
-- version-id | 削除するオブジェクトのバージョンID。 このオプションは、バケットのバージョン管理ステータスが有効または一時停止されている場合にのみ適用されます。 |
-すべてのバージョン | オブジェクトのすべてのバージョンを指定します。 このオプションは、バケットのバージョン管理ステータスが有効または一時停止されている場合にのみ適用されます。 rmコマンドで指定できるのは、-- version-idオプションと -- all-versionsオプションのいずれかだけです。 |
-- 支払人 | リクエストの支払人。 指定されたパスのリソースにアクセスするリクエスタにトラフィックとリクエスト料金の支払いをさせたい場合は、このオプションをrequesterに設定します。 |
-- encoding-type |
|
オブジェクトの削除
オブジェクトは削除後に復元できません。 この操作は慎重に行ってください。
rmコマンドを-rオプションの有無にかかわらず使用して1つ以上のオブジェクトを削除すると、ListObjects (GetBucket) およびDeleteObject操作が呼び出されます。 この場合、PUTリクエストの送信に対して課金されます。 詳細については、「API操作呼び出し料金」をご参照ください。
rmコマンドに -- includeおよび -- excludeオプションを含めてオブジェクトを削除すると、不適切な条件設定により誤って削除される可能性があります。 両方のオプションをrmコマンドに含める場合は、注意してください。
-- includeオプションと -- excludeオプションには、複数の条件を指定できます。 すべての条件は、オブジェクトを一致させるために左から右に適用されます。 複数の条件を指定する場合は、-- excludeオプションの前に -- includeオプションを指定することを推奨します。
例
単一のオブジェクトの削除
examplebucketという名前のバケットからexampleobject.txtという名前のオブジェクトを削除します。
. /ossutil64 rm oss:// examplebucket/exampleobject.txt
examplebucketという名前のバケットから "test" プレフィックスを含むオブジェクトをすべて削除します。
. /ossutil64 rm oss:// examplebucket/test -r
examplebucketという名前のバケットから、サフィックス ".png" を含むオブジェクトをすべて削除します。
. /ossutil64 rm oss:// examplebucket -- include "*.png" -r
examplebucketという名前のバケットから、名前に文字列 "abc" が含まれ、".jpg" または ".txt" が含まれていないオブジェクトを削除します。
. /ossutil64 rm oss:// examplebucket -- include "* abc *" -- exclude "*.jpg" -- exclude "*.txt" -r
examplebucketというバージョンのバケットから、exampleobject.txtという名前のオブジェクトの指定されたバージョンを削除します。
. /ossutil64 rm oss:// examplebucket/exampleobject.txt -- version-id CAEQARiBgID8rumR2hYiIGUyOTAyZGY2MzU5MjQ5ZjlhYzQzZjNlYTAyZDE3 ****
オブジェクトのすべてのバージョンを取得する方法の詳細については、「ls」をご参照ください。
examplebucketというバージョンのバケットから、exampleobject.txtというオブジェクトのすべてのバージョンを削除します。
. /ossutil64 rm oss:// examplebucket/exampleobject.txt -- すべてのバージョン
examplebucketというバージョンのバケットからすべてのオブジェクトのすべてのバージョンを削除します。
. /ossutil64 rm oss:// examplebucket -- all-versions -r
レスポンスの例
成功応答には、削除されたオブジェクトの数と削除操作の完了に使用した時間が含まれます。
成功: 合計8オブジェクト。 削除された8オブジェクト。 0.106852経過
パーツの削除
rmコマンドと複数のオプションを使用してパーツを削除する場合、ListMultipartUploads、ListParts、およびAbortMultipartUpload操作が呼び出されます。 この場合、ListMultipartUploadsおよびListParts操作が呼び出されたときのGETリクエストの送信と、AbortMultipartUpload操作が呼び出されたときのPUTリクエストの送信に対して課金されます。 詳細については、「API操作呼び出し料金」をご参照ください。
例
コマンドに -mオプションを指定して、examplebucketという名前のバケットからexampleobject.txtという名前のオブジェクトの不完全なマルチパートアップロードタスクによって生成されたパーツを削除します。
. /ossutil64 rm -m oss:// examplebucket/exampleobject.txt
コマンドに -mおよび -rオプションを指定して、examplebucketという名前のバケットから "test" プレフィックスを含むオブジェクトの不完全なマルチパートアップロードタスクによって生成されたパーツを再帰的に削除します。
. /ossutil64 rm -m oss:// examplebucket/test -r oss:// examplebucket/test(yまたはN) のマルチパートアップロードを再帰的に削除することを本当に意味しますか? y
コマンドで -aオプションと -rオプションを指定して、名前に "src" が含まれるオブジェクトと、これらのオブジェクトの不完全なマルチパートアップロードタスクによって生成されたパーツをバケット名examplebucketから再帰的に削除します。
. /ossutil64 rm oss:// examplebucket/src -a -r oss:// examplebucket/src(yまたはN) のオブジェクトとマルチパートアップロードを再帰的に削除することを本当に意味しますか? y
レスポンスの例
成功応答には、削除されたオブジェクトの数、削除されたパーツが生成されるマルチパートアップロードタスクの数、および削除操作の完了に使用された時間が含まれます。
成功: 合計1オブジェクト、3 uploadIds。 Removed 1 objects, 3 uploadIds. 1.922915経過
バケットの削除
オブジェクトまたはパーツを含まないexamplebucketバケットを削除します。
. /ossutil64 rm oss:// examplebucket -b あなたは本当にバケットを削除することを意味しますか: examplebucket(yまたはN)? y
成功応答には、削除されたバケットの名前と、バケットの削除に使用された時間が含まれます。
バケットを削除: examplebucket 2.230745経過
examplebucketという名前のバケットと、バケット内のすべてのオブジェクトとパーツを削除します。
警告次のコマンドを実行すると、バケット内のすべてのデータが削除され、削除されたデータは復元できません。 データを含むバケットを削除するときは、注意してください。
. /ossutil64 rm oss:// examplebucket -b -a -r oss:// examplebucket(yまたはN) のオブジェクトとマルチパートアップロードを再帰的に削除することを本当に意味しますか? y あなたは本当にバケットを削除することを意味しますか: examplebucket(yまたはN)? y
成功応答には、削除されたオブジェクトの数、削除されたパーツが生成されるマルチパートアップロードタスクの数、削除されたバケットの名前、および削除操作の完了に使用された時間が含まれます。
成功: 合計189オブジェクト、37 uploadId。 削除された189オブジェクト、37 uploadId。 削除されたバケット: examplebucket 9.184193経過
一般的なオプション
ossutilを使用して別のリージョンにあるバケットに切り替える場合は、コマンドに -eオプションを追加して、指定したバケットがあるリージョンのエンドポイントを指定します。 ossutilを使用して別のAlibaba Cloudアカウントに属するバケットに切り替える場合、コマンドに -iオプションを追加して、指定されたアカウントのAccessKey IDを指定し、コマンドに -kオプションを追加して、指定されたアカウントのAccessKeyシークレットを指定します。
たとえば、次のコマンドを実行して、中国 (上海) リージョンにあり、別のAlibaba Cloudアカウントに属するtestbucketという名前のバケットからexampletest.pngという名前のオブジェクトを削除できます。
. /ossutil64 rm oss:// testbucket/exampletest.png -e oss-cn-shanghai.aliyuncs.com -i LTAI4Fw2NbDUCV8zYUzA **** -k 67DLVBkH7EamOjy2W5RVAHUY9H ****
同期コマンドに使用できるその他の一般的なオプションの詳細については、「オプションの表示」をご参照ください。