Get-AzureStorageBlob

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

警告

AzureRM PowerShell モジュールは、2024 年 2 月 29 日の時点で正式に非推奨になりました。 引き続きサポートを受け、更新を受け取れるようにするために、AzureRM から Az PowerShell モジュールに移行することをお勧めします。

AzureRM モジュールは引き続き機能する可能性がありますが、メインが維持またはサポートされなくなり、ユーザーの判断とリスクで引き続き使用できます。 Az モジュールへの移行に関するガイダンスについては、移行リソースを参照してください。

構文

Get-AzureStorageBlob
   [[-Blob] <String>]
   [-Container] <String>
   [-IncludeDeleted]
   [-MaxCount <Int32>]
   [-ContinuationToken <BlobContinuationToken>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [<CommonParameters>]
Get-AzureStorageBlob
   [-Prefix <String>]
   [-Container] <String>
   [-IncludeDeleted]
   [-MaxCount <Int32>]
   [-ContinuationToken <BlobContinuationToken>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [<CommonParameters>]

説明

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

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

PS C:\>Get-AzureStorageBlob -Container "ContainerName" -Blob blob*

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

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

PS C:\>Get-AzureStorageContainer -Name container* | Get-AzureStorageBlob -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 を取得する

PS C:\>Get-AzureStorageBlob -Container "ContainerName" -Prefix "blob"

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

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

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

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

パラメーター

-Blob

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

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

-ClientTimeoutPerRequest

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

型:Nullable<T>[Int32]
配置: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-AzureStorageContext コマンドレットを使用して、ストレージ コンテキストを作成できます。

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

-ContinuationToken

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

型: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

-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]
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

String

IStorageContext

出力

AzureStorageBlob