Get-AzStorageBlob

Lista os blobs em um contêiner.

Sintaxe

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>]

Description

O cmdlet Get-AzStorageBlob lista blobs no contêiner especificado em uma conta de armazenamento do Azure.

Exemplos

Exemplo 1: Obter um blob pelo nome do blob

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

Esse comando usa um nome de blob e um curinga para obter um blob.

Exemplo 2: Obter blobs em um contêiner usando o pipeline

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

Esse comando usa o pipeline para obter todos os blobs (incluir blobs no status Excluído) em um contêiner.

Exemplo 3: Obter blobs por prefixo de nome

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

Esse comando usa um prefixo de nome para obter blobs.

Exemplo 4: Listar blobs em vários lotes

$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"

Este exemplo usa os parâmetros MaxCount e ContinuationToken para listar blobs de Armazenamento do Azure em vários lotes. Os primeiros quatro comandos atribuem valores a variáveis a serem usadas no exemplo. O quinto comando especifica uma instrução Do-While que usa o cmdlet Get-AzStorageBlob para obter blobs. A instrução inclui o token de continuação armazenado na variável $Token. $Token altera o valor à medida que o loop é executado. Para obter mais informações, digite Get-Help About_Do. O comando final usa o comando Eco para exibir o total.

Exemplo 5: Obter todos os blobs em um contêiner incluindo a versão do 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 *

Esse comando obtém todos os blobs em uma versão de blob de inclusão de contêiner.

Exemplo 6: Obter uma única versão de 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

Esse comando obtém uma única versão de blobs com VersionId.

Exemplo 7: Obter um único instantâneo de 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

Esse comando obtém um único instantâneo de blobs com SnapshotTime.

Exemplo 8: Obter marcas de blob de inclusão de 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

Esse comando lista blobs de um contêiner com marcas de blob e mostra as marcas do primeiro blob.

Exemplo 9: Obter um único blob com condição de marca de 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 *

Esse comando obtém um único blob com a condição de marca de blob. O cmdlet só terá êxito quando o blob contiver uma marca com o nome "tag1" e o valor "value1", caso contrário, o cmdlet falhará com o código de erro 412.

Exemplo 10: Obter propriedades de blob (exemplo: ImmutabilityPolicy) de um único blob

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

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

Este comando de exemplo obtém a propriedade de imutabilidade de um único blob. Você pode obter uma lista detalhada de prTooperties de blob da propriedade BlobProperties , incluindo, mas não se limitando a: LastModified, ContentLength, ContentHash, BlobType, LeaseState, AccessTier, ETag, ImmutabilityPolicy, etc... Para listar vários blobs (executar o cmdlet sem o nome do blob), use ListBlobProperties.Properties em vez de BlobProperties para obter um melhor desempenho.

Parâmetros

-Blob

Especifica um nome ou padrão de nome, que pode ser usado para uma pesquisa curinga. Se nenhum nome de blob for especificado, o cmdlet listará todos os blobs no contêiner especificado. Se um valor for especificado para esse parâmetro, o cmdlet listará todos os blobs com nomes que correspondem a esse parâmetro. Esse parâmetro dá suporte a curingas em qualquer lugar da cadeia de caracteres.

Tipo:String
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:True

-ClientTimeoutPerRequest

Especifica o intervalo de tempo limite do lado do cliente, em segundos, para uma solicitação de serviço. Se a chamada anterior falhar no intervalo especificado, esse cmdlet repetirá a solicitação. Se esse cmdlet não receber uma resposta bem-sucedida antes do término do intervalo, ele retornará um erro.

Tipo:Nullable<T>[Int32]
Aliases:ClientTimeoutPerRequestInSeconds
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ConcurrentTaskCount

Especifica o máximo de chamadas de rede simultâneas. Você pode usar esse parâmetro para limitar a simultaneidade para limitar o uso local da CPU e da largura de banda especificando o número máximo de chamadas de rede simultâneas. O valor especificado é uma contagem absoluta e não é multiplicado pela contagem de núcleos. Esse parâmetro pode ajudar a reduzir problemas de conexão de rede em ambientes de baixa largura de banda, como 100 kilobits por segundo. O valor padrão é 10.

Tipo:Nullable<T>[Int32]
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Container

Especifica o nome do contêiner.

Tipo:String
Aliases:N, Name
Cargo:1
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-Context

Especifica a conta de armazenamento do Azure da qual você deseja obter uma lista de blobs. Você pode usar o cmdlet New-AzStorageContext para criar um contexto de armazenamento.

Tipo:IStorageContext
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-ContinuationToken

Especifica um token de continuação para a lista de blobs. Use esse parâmetro e o parâmetro MaxCount para listar blobs em vários lotes.

Tipo:BlobContinuationToken
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-DefaultProfile

As credenciais, a conta, o locatário e a assinatura usados para a comunicação com o Azure.

Tipo:IAzureContextContainer
Aliases:AzureRmContext, AzureCredential
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-IncludeDeleted

Incluir Blob Excluído, por padrão, get blob não incluirá blob excluído.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-IncludeTag

Incluir marcas de blob, por padrão, get blob não incluirá marcas de blob.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-IncludeVersion

As versões de blob serão listadas somente se esse parâmetro estiver presente, por padrão, get blob não incluirá versões de blob.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-MaxCount

Especifica o número máximo de objetos que esse cmdlet retorna.

Tipo:Nullable<T>[Int32]
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Prefix

Especifica um prefixo para os nomes de blob que você deseja obter. Esse parâmetro não dá suporte ao uso de expressões regulares ou caracteres curinga para pesquisar. Isso significa que, se o contêiner tiver apenas blobs chamados "My", "MyBlob1" e "MyBlob2" e você especificar "-Prefix My*", o cmdlet não retornará blobs. No entanto, se você especificar "-Prefix My", o cmdlet retornará "My", "MyBlob1" e "MyBlob2".

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ServerTimeoutPerRequest

Especifica o intervalo de tempo limite do lado do serviço, em segundos, para uma solicitação. Se o intervalo especificado decorrer antes que o serviço processe a solicitação, o serviço de armazenamento retornará um erro.

Tipo:Nullable<T>[Int32]
Aliases:ServerTimeoutPerRequestInSeconds
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-SnapshotTime

Blob SnapshotTime

Tipo:Nullable<T>[DateTimeOffset]
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-TagCondition

Instrução de expressão de tag opcional para verificar a condição de correspondência. A solicitação de blob falhará quando as marcas de blob não corresponderem à expressão fornecida. Confira os detalhes em https://video2.skills-academy.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations#tags-conditional-operations.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-VersionId

Blob VersionId

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

String

IStorageContext

Saídas

AzureStorageBlob