Condividi tramite


Get-AzStorageBlob

Elenca i BLOB di un contenitore.

Sintassi

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

Descrizione

Il cmdlet Get-AzStorageBlob elenca i BLOB nel contenitore specificato in un account di archiviazione di Azure.

Esempio

Esempio 1: Ottenere un BLOB in base al nome del BLOB

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

Questo comando usa un nome BLOB e un carattere jolly per ottenere un BLOB.

Esempio 2: Ottenere BLOB in un contenitore usando la 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

Questo comando usa la pipeline per ottenere tutti i BLOB (inclusi i BLOB nello stato eliminato) in un contenitore.

Esempio 3: Ottenere BLOB in base al prefisso del nome

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

Questo comando usa un prefisso del nome per ottenere i BLOB.

Esempio 4: Elencare i BLOB in più batch

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

Questo esempio usa i parametri MaxCount e ContinuationToken per elencare Archiviazione di Azure BLOB in più batch. I primi quattro comandi assegnano valori alle variabili da usare nell'esempio. Il quinto comando specifica un'istruzione Do-While che usa il cmdlet Get-AzStorageBlob per ottenere i BLOB. L'istruzione include il token di continuazione archiviato nella variabile $Token. $Token cambia valore durante l'esecuzione del ciclo. Per ulteriori informazioni, digitare Get-Help About_Do. Il comando finale usa il comando Echo per visualizzare il totale.

Esempio 5: Ottenere tutti i BLOB in un contenitore includono la versione 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 *

Questo comando ottiene tutti i BLOB in un contenitore includono la versione del BLOB.

Esempio 6: Ottenere una singola versione del 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

Questo comando ottiene un singolo BLOB con VersionId.

Esempio 7: Ottenere un singolo snapshot 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

Questo comando ottiene un singolo snapshot di BLOB con SnapshotTime.

Esempio 8: Ottenere i tag BLOB includono i tag 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

Questo comando elenca i BLOB da un contenitore con tag BLOB e mostra i tag del primo BLOB.

Esempio 9: Ottenere un singolo BLOB con una condizione di tag 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 *

Questo comando ottiene un singolo BLOB con condizione di tag BLOB. Il cmdlet avrà esito positivo solo quando il BLOB contiene un tag con nome "tag1" e valore "value1", altrimenti il cmdlet avrà esito negativo con codice di errore 412.

Parametri

-Blob

Specifica un nome o un modello di nome, che può essere usato per una ricerca con caratteri jolly. Se non viene specificato alcun nome BLOB, il cmdlet elenca tutti i BLOB nel contenitore specificato. Se per questo parametro viene specificato un valore, il cmdlet elenca tutti i BLOB con nomi corrispondenti a questo parametro. Questo parametro supporta caratteri jolly in qualsiasi punto della stringa.

Tipo:String
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:True

-ClientTimeoutPerRequest

Specifica l'intervallo di timeout lato client, espresso in secondi, per una richiesta di servizio. Se la chiamata precedente ha esito negativo nell'intervallo specificato, questo cmdlet ritenta la richiesta. Se questo cmdlet non riceve una risposta corretta prima della scadenza dell'intervallo, questo cmdlet restituisce un errore.

Tipo:Nullable<T>[Int32]
Alias:ClientTimeoutPerRequestInSeconds
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ConcurrentTaskCount

Specifica il numero massimo di chiamate di rete simultanee. È possibile usare questo parametro per limitare la concorrenza per limitare l'utilizzo della CPU e della larghezza di banda locali specificando il numero massimo di chiamate di rete simultanee. Il valore specificato è un conteggio assoluto e non viene moltiplicato per il numero di core. Questo parametro consente di ridurre i problemi di connessione di rete in ambienti a larghezza di banda ridotta, ad esempio 100 kilobit al secondo. Il valore predefinito è 10.

Tipo:Nullable<T>[Int32]
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Container

Specifica il nome del contenitore.

Tipo:String
Alias:N, Name
Posizione:1
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-Context

Specifica l'account di archiviazione di Azure da cui si vuole ottenere un elenco di BLOB. È possibile usare il cmdlet New-AzStorageContext per creare un contesto di archiviazione.

Tipo:IStorageContext
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-ContinuationToken

Specifica un token di continuazione per l'elenco di BLOB. Usare questo parametro e il parametro MaxCount per elencare i BLOB in più batch.

Tipo:BlobContinuationToken
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-DefaultProfile

Le credenziali, l’account, il tenant e la sottoscrizione usati per comunicare con Azure.

Tipo:IAzureContextContainer
Alias:AzureRmContext, AzureCredential
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-IncludeDeleted

Includi BLOB eliminato. Per impostazione predefinita, il BLOB get non includerà il BLOB eliminato.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-IncludeTag

Includere i tag BLOB. Per impostazione predefinita, il BLOB get non includerà i tag BLOB.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-IncludeVersion

Le versioni blob verranno elencate solo se questo parametro è presente, per impostazione predefinita get BLOB non includerà le versioni blob.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-MaxCount

Specifica il numero massimo di oggetti restituiti dal cmdlet.

Tipo:Nullable<T>[Int32]
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Prefix

Specifica un prefisso per i nomi di BLOB che si desidera ottenere. Questo parametro non supporta l'uso di espressioni regolari o caratteri jolly per la ricerca. Ciò significa che se il contenitore ha solo BLOB denominati "My", "MyBlob1" e "MyBlob2" e si specifica "-Prefix My*", il cmdlet non restituisce BLOB. Tuttavia, se si specifica "-Prefix My", il cmdlet restituisce "My", "My", "MyBlob1" e "MyBlob2".

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ServerTimeoutPerRequest

Specifica l'intervallo di timeout sul lato servizio, espresso in secondi, per una richiesta. Se l'intervallo specificato è trascorso prima che il servizio elabori la richiesta, il servizio di archiviazione restituisce un errore.

Tipo:Nullable<T>[Int32]
Alias:ServerTimeoutPerRequestInSeconds
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-SnapshotTime

Blob SnapshotTime

Tipo:Nullable<T>[DateTimeOffset]
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-TagCondition

Istruzione di espressione tag facoltativa per controllare la condizione di corrispondenza. La richiesta BLOB avrà esito negativo quando i tag BLOB non corrispondono all'espressione specificata. Vedere i dettagli in https://learn.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations#tags-conditional-operations.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-VersionId

ID versione BLOB

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

Input

String

IStorageContext

Output

AzureStorageBlob