Freigeben über


Get-AzStorageBlob

Listet die Blobs in einem Container auf.

Syntax

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

Beschreibung

Das Cmdlet "Get-AzStorageBlob " listet Blobs im angegebenen Container in einem Azure-Speicherkonto auf.

Beispiele

Beispiel 1: Abrufen eines Blobs nach Blobname

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

Dieser Befehl verwendet einen BLOB-Namen und einen Wildcard zum Abrufen eines Blobs.

Beispiel 2: Abrufen von Blobs in einem Container mithilfe der 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

Dieser Befehl verwendet die Pipeline, um alle Blobs (einschließlich Blobs im Status "Gelöscht") in einem Container abzurufen.

Beispiel 3: Abrufen von Blobs nach Namenspräfix

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

Dieser Befehl verwendet ein Namenspräfix zum Abrufen von Blobs.

Beispiel 4: Auflisten von Blobs in mehreren Batches

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

In diesem Beispiel werden die Parameter "MaxCount " und "ContinuationToken " verwendet, um Azure Storage-Blobs in mehreren Batches auflisten zu können. Die ersten vier Befehle weisen Variablen Werte zu, die im Beispiel verwendet werden sollen. Der fünfte Befehl gibt eine Do-While-Anweisung an, die das Cmdlet Get-AzStorageBlob verwendet, um Blobs abzurufen. Die Anweisung enthält das in der $Token Variable gespeicherte Fortsetzungstoken. $Token ändert den Wert, während die Schleife ausgeführt wird. Geben Sie Folgendes ein, um weitere Informationen zu erhalten: Get-Help About_Do. Der letzte Befehl verwendet den Befehl "Echo ", um die Summe anzuzeigen.

Beispiel 5: Abrufen aller Blobs in einem Container enthalten blob-Version

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 *

Dieser Befehl ruft alle Blobs in einem Container einschließlich BLOB-Version ab.

Beispiel 6: Abrufen einer einzelnen BLOB-Version

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

Dieser Befehl ruft eine einzelne Blobs-Verion mit VersionId ab.

Beispiel 7: Abrufen einer einzelnen BLOB-Momentaufnahme

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

Dieser Befehl ruft eine einzelne Blobs-Momentaufnahme mit SnapshotTime ab.

Beispiel 8: Blob-Blob-Tags abrufen

$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

Dieser Befehl listet Blobs aus einem Container mit BLOB-Tags auf und zeigt die Tags des ersten Blobs an.

Beispiel 9: Abrufen eines einzelnen Blobs mit Blob-Tag-Bedingung

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 *

Dieser Befehl ruft ein einzelnes BLOB mit Blob-Tag-Bedingung ab. Das Cmdlet wird nur erfolgreich ausgeführt, wenn das Blob ein Tag mit dem Namen "tag1" und dem Wert "value1" enthält, andernfalls schlägt das Cmdlet mit dem Fehlercode 412 fehl.

Parameter

-Blob

Gibt ein Namens- oder Namensmuster an, das für eine Wildcardsuche verwendet werden kann. Wenn kein Blobname angegeben ist, listet das Cmdlet alle Blobs im angegebenen Container auf. Wenn für diesen Parameter ein Wert angegeben ist, listet das Cmdlet alle Blobs mit Namen auf, die diesem Parameter entsprechen. Dieser Parameter unterstützt Wildcards an einer beliebigen Stelle in der Zeichenfolge.

Typ:String
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:True

-ClientTimeoutPerRequest

Gibt das clientseitige Timeoutintervall in Sekunden für eine Serviceanfrage an. Wenn der vorherige Aufruf im angegebenen Intervall fehlschlägt, führt dieses Cmdlet die Anforderung erneut aus. Wenn dieses Cmdlet vor Ablauf des Intervalls keine erfolgreiche Antwort erhält, gibt dieses Cmdlet einen Fehler zurück.

Typ:Nullable<T>[Int32]
Aliase:ClientTimeoutPerRequestInSeconds
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ConcurrentTaskCount

Gibt die maximalen gleichzeitigen Netzwerkanrufe an. Mit diesem Parameter können Sie die Parallelität einschränken, um die lokale CPU- und Bandbreitenauslastung zu drosseln, indem Sie die maximale Anzahl gleichzeitiger Netzwerkanrufe angeben. Der angegebene Wert ist eine absolute Anzahl und wird nicht mit der Kernanzahl multipliziert. Dieser Parameter kann dazu beitragen, Netzwerkverbindungsprobleme in Umgebungen mit geringer Bandbreite zu reduzieren, z. B. 100 Kilobit pro Sekunde. Der Standardwert ist 10.

Typ:Nullable<T>[Int32]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Container

Gibt den Namen des Containers an.

Typ:String
Aliase:N, Name
Position:1
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Context

Gibt das Azure-Speicherkonto an, aus dem Sie eine Liste von Blobs abrufen möchten. Sie können das Cmdlet New-AzStorageContext verwenden, um einen Speicherkontext zu erstellen.

Typ:IStorageContext
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-ContinuationToken

Gibt ein Fortsetzungstoken für die Blobliste an. Verwenden Sie diesen Parameter und den Parameter "MaxCount ", um Blobs in mehreren Batches auflisten zu können.

Typ:BlobContinuationToken
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DefaultProfile

Anmeldeinformationen, Konto, Mandant und Abonnement für die Kommunikation mit Azure

Typ:IAzureContextContainer
Aliase:AzureRmContext, AzureCredential
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-IncludeDeleted

"Gelöschtes Blob einschließen", enthält standardmäßig "Blob abrufen" kein gelöschtes Blob.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-IncludeTag

Blob-Tags einschließen, enthalten blob-Tags standardmäßig nicht.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-IncludeVersion

Blob-Versionen werden nur aufgeführt, wenn dieser Parameter vorhanden ist, enthält get blob-Versionen standardmäßig nicht.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-MaxCount

Gibt die maximale Anzahl von Objekten an, die dieses Cmdlet zurückgibt.

Typ:Nullable<T>[Int32]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Prefix

Gibt ein Präfix für die Blobnamen an, die Sie abrufen möchten. Dieser Parameter unterstützt nicht die Verwendung regulärer Ausdrücke oder Wildcardzeichen zum Durchsuchen. Wenn der Container nur Blobs mit dem Namen "My", "MyBlob1" und "MyBlob2" enthält und Sie "-Prefix My*" angeben, gibt das Cmdlet keine Blobs zurück. Wenn Sie jedoch "-Prefix My" angeben, gibt das Cmdlet "My", "MyBlob1" und "MyBlob2" zurück.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ServerTimeoutPerRequest

Gibt das Dienstseitige Timeoutintervall in Sekunden für eine Anforderung an. Wenn das angegebene Intervall verstrichen ist, bevor der Dienst die Anforderung verarbeitet, gibt der Speicherdienst einen Fehler zurück.

Typ:Nullable<T>[Int32]
Aliase:ServerTimeoutPerRequestInSeconds
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SnapshotTime

Blob SnapshotTime

Typ:Nullable<T>[DateTimeOffset]
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-TagCondition

Optionale Tag-Ausdrucksanweisung zum Überprüfen der Übereinstimmungsbedingung. Die BLOB-Anforderung schlägt fehl, wenn die Blobtags nicht mit dem angegebenen Ausdruck übereinstimmen. Weitere Informationen finden Sie in https://learn.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations#tags-conditional-operations.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-VersionId

Blob-VersionId

Typ:String
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

String

IStorageContext

Ausgaben

AzureStorageBlob