Get-AzStorageBlob

コンテナー内の BLOB を一覧表示します。

構文

Get-AzStorageBlob
   [[-Blob] <String>]
   [-Container] <String>
   [-IncludeDeleted]
   [-IncludeTag]
   [-MaxCount <Int32>]
   [-ContinuationToken <BlobContinuationToken>]
   [-TagCondition <String>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [<CommonParameters>]
Get-AzStorageBlob
   [-Blob] <String>
   [-Container] <String>
   [-IncludeDeleted]
   [-IncludeTag]
   -SnapshotTime <DateTimeOffset>
   [-MaxCount <Int32>]
   [-ContinuationToken <BlobContinuationToken>]
   [-TagCondition <String>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [<CommonParameters>]
Get-AzStorageBlob
   [-Blob] <String>
   [-Container] <String>
   [-IncludeDeleted]
   [-IncludeTag]
   -VersionId <String>
   [-MaxCount <Int32>]
   [-ContinuationToken <BlobContinuationToken>]
   [-TagCondition <String>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [<CommonParameters>]
Get-AzStorageBlob
   [-Prefix <String>]
   [-Container] <String>
   [-IncludeDeleted]
   [-IncludeVersion]
   [-IncludeTag]
   [-MaxCount <Int32>]
   [-ContinuationToken <BlobContinuationToken>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [<CommonParameters>]

説明

Get-AzStorageBlob コマンドレットは、Azure ストレージ アカウント内の指定されたコンテナー内の BLOB を一覧表示します。

例 1: BLOB 名で BLOB を取得する

Get-AzStorageBlob -Container "ContainerName" -Blob blob*

このコマンドでは、BLOB 名とワイルドカードを使用して BLOB を取得します。

例 2: パイプラインを使用してコンテナー内の BLOB を取得する

Get-AzStorageContainer -Name container* | Get-AzStorageBlob -IncludeDeleted

Container Uri: https://storageaccountname.blob.core.windows.net/container1

Name                 BlobType  Length          ContentType                    LastModified         AccessTier SnapshotTime         IsDeleted 
----                 --------  ------          -----------                    ------------         ---------- ------------         --------- 
test1                BlockBlob 403116          application/octet-stream       2017-11-08 07:53:19Z            2017-11-08 08:19:32Z True      
test1                BlockBlob 403116          application/octet-stream       2017-11-08 09:00:29Z                                 True      
test2                BlockBlob 403116          application/octet-stream       2017-11-08 07:53:00Z                                 False

このコマンドは、パイプラインを使用して、コンテナー内のすべての BLOB (削除済み状態の BLOB を含む) を取得します。

例 3: 名前プレフィックスで BLOB を取得する

Get-AzStorageBlob -Container "ContainerName" -Prefix "blob"

このコマンドでは、名前プレフィックスを使用して BLOB を取得します。

例 4: 複数のバッチ内の BLOB を一覧表示する

$MaxReturn = 10000
$ContainerName = "abc"
$Total = 0
$Token = $Null
do
 {
     $Blobs = Get-AzStorageBlob -Container $ContainerName -MaxCount $MaxReturn  -ContinuationToken $Token
     $Total += $Blobs.Count
     if($Blobs.Length -le 0) { Break;}
     $Token = $Blobs[$blobs.Count -1].ContinuationToken;
 }
 While ($null -ne $Token)
Echo "Total $Total blobs in container $ContainerName"

この例では、 MaxCountContinuationToken パラメーターを使用して、Azure Storage BLOB を複数のバッチで一覧表示します。 最初の 4 つのコマンドは、この例で使用する変数に値を割り当てます。 5 番目のコマンドは、Get-AzStorageBlob コマンドレットを使用して BLOB を取得する Do-While ステートメントを指定します。 ステートメントには、$Token変数に格納されている継続トークンが含まれています。 $Tokenループの実行時に値が変更されます。 詳細を表示するには「Get-Help About_Do」を入力します。 最後のコマンドでは、 Echo コマンドを使用して合計を表示します。

例 5: コンテナー内のすべての BLOB を取得する (BLOB バージョンを含む)

Get-AzStorageBlob -Container "containername"  -IncludeVersion

AccountName: storageaccountname, ContainerName: containername

Name                 BlobType  Length          ContentType                    LastModified         AccessTier SnapshotTime                 IsDeleted  VersionId                     
----                 --------  ------          -----------                    ------------         ---------- ------------                 ---------  ---------                     
blob1                BlockBlob 2097152         application/octet-stream       2020-07-06 06:56:06Z Hot                                     False      2020-07-06T06:56:06.2432658Z  
blob1                BlockBlob 2097152         application/octet-stream       2020-07-06 06:56:06Z Hot        2020-07-06T06:56:06.8588431Z False                                    
blob1                BlockBlob 2097152         application/octet-stream       2020-07-06 06:56:06Z Hot                                     False      2020-07-06T06:56:06.8598431Z *  
blob2                BlockBlob 2097152         application/octet-stream       2020-07-03 16:19:16Z Hot                                     False      2020-07-03T16:19:16.2883167Z  
blob2                BlockBlob 2097152         application/octet-stream       2020-07-03 16:19:35Z Hot                                     False      2020-07-03T16:19:35.2381110Z *

このコマンドは、コンテナー内のすべての BLOB に BLOB バージョンを含めます。

例 6: 1 つの BLOB バージョンを取得する

Get-AzStorageBlob -Container "containername" -Blob blob2 -VersionId "2020-07-03T16:19:16.2883167Z"

AccountName: storageaccountname, ContainerName: containername

Name                 BlobType  Length          ContentType                    LastModified         AccessTier SnapshotTime                 IsDeleted  VersionId                     
----                 --------  ------          -----------                    ------------         ---------- ------------                 ---------  ---------                     
blob2                BlockBlob 2097152         application/octet-stream       2020-07-03 16:19:16Z Hot                                     False      2020-07-03T16:19:16.2883167Z

このコマンドは、VersionId を持つ 1 つの BLOB バージョンを取得します。

例 7: 1 つの BLOB スナップショットを取得する

Get-AzStorageBlob -Container "containername" -Blob blob1 -SnapshotTime "2020-07-06T06:56:06.8588431Z"

AccountName: storageaccountname, ContainerName: containername

Name                 BlobType  Length          ContentType                    LastModified         AccessTier SnapshotTime                 IsDeleted  VersionId                     
----                 --------  ------          -----------                    ------------         ---------- ------------                 ---------  ---------                     
blob1                BlockBlob 2097152         application/octet-stream       2020-07-06 06:56:06Z Hot        2020-07-06T06:56:06.8588431Z False

このコマンドは、SnapshotTime を使用して 1 つの BLOB スナップショットを取得します。

例 8: BLOB インクルード BLOB タグを取得する

$blobs = Get-AzStorageBlob -Container "containername" -IncludeTag

$blobs

   AccountName: storageaccountname, ContainerName: containername

Name                 BlobType  Length          ContentType                    LastModified         AccessTier SnapshotTime                 IsDeleted  VersionId                     
----                 --------  ------          -----------                    ------------         ---------- ------------                 ---------  ---------                     
testblob             BlockBlob 2097152         application/octet-stream       2020-07-23 09:35:02Z Hot                                     False      2020-07-23T09:35:02.8527357Z *
testblob2            BlockBlob 2097152         application/octet-stream       2020-07-23 09:35:04Z Hot                                     False      2020-07-23T09:35:04.0856187Z *


$blobs[0].Tags
Name          Value 
----          -----
tag1          value1
tag2          value2

このコマンドは、BLOB タグを持つコンテナーの BLOB を一覧表示し、最初の BLOB のタグを表示します。

例 9: BLOB タグ条件を持つ 1 つの BLOB を取得する

Get-AzStorageBlob -Container "containername" -Blob testblob -TagCondition """tag1""='value1'"

AccountName: storageaccountname, ContainerName: containername

Name                 BlobType  Length          ContentType                    LastModified         AccessTier SnapshotTime                 IsDeleted  VersionId                     
----                 --------  ------          -----------                    ------------         ---------- ------------                 ---------  ---------                     
testblob             BlockBlob 2097152         application/octet-stream       2020-07-23 09:35:02Z Hot                                     False      2020-07-23T09:35:02.8527357Z *

このコマンドは、BLOB タグ条件を持つ 1 つの BLOB を取得します。 このコマンドレットは、BLOB に "tag1" という名前と値 "value1" のタグが含まれている場合にのみ成功します。それ以外の場合、コマンドレットはエラー コード 412 で失敗します。

例 10: 1 つの BLOB の BLOB プロパティ (例: ImmutabilityPolicy) を取得する

$blobProperties = (Get-AzStorageBlob -Container "ContainerName" -Blob "blob" -Context $ctx).BlobProperties
$blobProperties.ImmutabilityPolicy

ExpiresOn                   PolicyMode
---------                   ----------
9/17/2024 2:49:32 AM +00:00   Unlocked

このコマンド例では、1 つの BLOB の不変プロパティを取得します。 BlobProperties プロパティから BLOB prTooperties の詳細な一覧を取得できます。これには、LastModified、ContentLength、ContentHash、BlobType、LeaseState、AccessTier、ETag、ImmutabilityPolicy などがありますが、これらに限定されません。複数の BLOB を一覧表示する (BLOB 名を指定せずにコマンドレットを実行する) には、パフォーマンスを向上させるために、BlobProperties の代わりに ListBlobProperties.Properties を使用します。

パラメーター

-Blob

ワイルドカード検索に使用できる名前または名前パターンを指定します。 BLOB 名が指定されていない場合、コマンドレットは指定されたコンテナー内のすべての BLOB を一覧表示します。 このパラメーターに値が指定されている場合、コマンドレットは、このパラメーターに一致する名前を持つすべての BLOB を一覧表示します。 このパラメーターは、文字列内の任意の場所でワイルドカードをサポートします。

型:String
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:True

-ClientTimeoutPerRequest

1 つのサービス要求に対するクライアント側のタイムアウト間隔を秒単位で指定します。 指定した間隔で前の呼び出しが失敗した場合、このコマンドレットは要求を再試行します。 間隔が経過する前にこのコマンドレットが正常な応答を受け取らない場合、このコマンドレットはエラーを返します。

型:Nullable<T>[Int32]
Aliases:ClientTimeoutPerRequestInSeconds
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ConcurrentTaskCount

同時ネットワーク呼び出しの最大数を指定します。 このパラメーターを使用すると、同時ネットワーク呼び出しの最大数を指定することで、ローカル CPU と帯域幅の使用量を調整するコンカレンシーを制限できます。 指定した値は絶対カウントであり、コア数には乗算されません。 このパラメーターは、1 秒あたり 100 キロビットなどの低帯域幅環境でのネットワーク接続の問題を減らすのに役立ちます。 既定値は 10 です。

型:Nullable<T>[Int32]
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Container

コンテナーの名前を指定します。

型:String
Aliases:N, Name
配置:1
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Context

BLOB の一覧を取得する Azure ストレージ アカウントを指定します。 New-AzStorageContext コマンドレットを使用して、ストレージ コンテキストを作成できます。

型:IStorageContext
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-ContinuationToken

BLOB リストの継続トークンを指定します。 複数のバッチで BLOB を一覧表示するには、このパラメーターと MaxCount パラメーターを使用します。

型:BlobContinuationToken
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-DefaultProfile

Azure との通信のために使用される資格情報、アカウント、テナント、サブスクリプションです。

型:IAzureContextContainer
Aliases:AzureRmContext, AzureCredential
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-IncludeDeleted

削除済み BLOB を含める。既定では、BLOB の取得には削除された BLOB は含まれません。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-IncludeTag

BLOB タグを含めます。既定では、BLOB の取得には BLOB タグは含まれません。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-IncludeVersion

BLOB のバージョンは、このパラメーターが存在する場合にのみ一覧表示されます。既定では、BLOB の取得には BLOB のバージョンは含まれません。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-MaxCount

このコマンドレットが返すオブジェクトの最大数を指定します。

型:Nullable<T>[Int32]
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Prefix

取得する BLOB 名のプレフィックスを指定します。 このパラメーターでは、正規表現またはワイルドカード文字を使用した検索はサポートされていません。 つまり、コンテナーに "My"、"MyBlob1"、および "MyBlob2" という名前の BLOB のみが含まれており、"-Prefix My*" を指定した場合、コマンドレットは BLOB を返しません。 ただし、"-Prefix My" を指定すると、コマンドレットは "My"、"MyBlob1"、および "MyBlob2" を返します。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ServerTimeoutPerRequest

要求のサービス側のタイムアウト間隔を秒単位で指定します。 サービスが要求を処理する前に指定した間隔が経過すると、ストレージ サービスはエラーを返します。

型:Nullable<T>[Int32]
Aliases:ServerTimeoutPerRequestInSeconds
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-SnapshotTime

Blob SnapshotTime

型:Nullable<T>[DateTimeOffset]
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-TagCondition

一致条件を確認するオプションの Tag 式ステートメント。 BLOB タグが指定された式と一致しない場合、BLOB 要求は失敗します。 詳細については、 https://video2.skills-academy.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations#tags-conditional-operations を確認してください。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-VersionId

Blob VersionId

型:String
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

String

IStorageContext

出力

AzureStorageBlob