2

BLOB にいくつかのファイルを保存しました。BLOB ファイルの構造は次のとおりです。

/container/B1/1
/container/B1/2
/container/B1/3
/container/B1/4

/container/B2/1
/container/B2/2
/container/B2/3
/container/B2/4

ここで、B1 BLOB に存在するすべてのサブ BLOB (つまり 1,2,3,4 ) を削除したいと考えています。どうすればこれを削除できますか?

4

1 に答える 1

3

技術的に言えば、それらは「サブブロブ」ではありません。Azure BLOB ストレージには、コンテナーと BLOB の 2 つのレベルがあります。実際には、「B1/1」、「B1/2」、「B1/3」、「B1/4」という名前の 4 つの別個の無関係なブロブがあり、それらを個別に削除する必要があります。

手動でやりたいだけなら、Cerebrata Cloud Storage StudioCloudberry Explorerなどのユーティリティは非常に貴重なツールです。

プログラムによって、さまざまな SDK の各ストレージ クライアント API には、行われる最終的な REST 呼び出しのラッパーがあります。List Blobs APIには、指定されたプレフィックスを持つすべての BLOB を一覧表示するオプションの区切り文字パラメーターがあります。そのため、たとえば List Blobs と "B1/" のプレフィックスを使用すると、対象の 4 つの BLOB が返され、個別に発行されます。それらを削除します。.NET SDK を使用している場合は、 BlobRequestOptions.UseFlatBlobListingオプションの使用について、この ListBlob のオーバーロードを参照してください)。

于 2012-08-30T06:20:34.907 に答える