Get-AzStorageBlobContent

Downloads a storage blob.

Syntax

Get-AzStorageBlobContent
   [-Blob] <String>
   [-Container] <String>
   [-Destination <String>]
   [-CheckMd5]
   [-Force]
   [-AsJob]
   [-TagCondition <String>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Get-AzStorageBlobContent
   -CloudBlob <CloudBlob>
   [-BlobBaseClient <BlobBaseClient>]
   [-Destination <String>]
   [-CheckMd5]
   [-Force]
   [-AsJob]
   [-TagCondition <String>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Get-AzStorageBlobContent
   -CloudBlobContainer <CloudBlobContainer>
   [-Blob] <String>
   [-Destination <String>]
   [-CheckMd5]
   [-Force]
   [-AsJob]
   [-TagCondition <String>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Get-AzStorageBlobContent
   [-Destination <String>]
   -AbsoluteUri <String>
   [-Force]
   [-AsJob]
   [-TagCondition <String>]
   [-Context <IStorageContext>]
   [-ServerTimeoutPerRequest <Int32>]
   [-ClientTimeoutPerRequest <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [-ConcurrentTaskCount <Int32>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

The Get-AzStorageBlobContent cmdlet downloads the specified storage blob. If the blob name is not valid for the local computer, this cmdlet automatically resolves it if it is possible.

Examples

Example 1: Download blob content by name

Get-AzStorageBlobContent -Container "ContainerName" -Blob "Blob" -Destination "C:\test\"

This command downloads a blob by name.

Example 2: Download blob content using the pipeline

Get-AzStorageBlob -Container containername -Blob blobname | Get-AzStorageBlobContent

This command uses the pipeline to find and download blob content.

Example 3: Download blob content using the pipeline and a wildcard character

Get-AzStorageContainer container* | Get-AzStorageBlobContent -Blob "cbox.exe" -Destination "C:\test"

This example uses the asterisk wildcard character and the pipeline to find and download blob content.

Example 4: Get a blob object and save it in a variable, then download blob content with the blob object

$blob = Get-AzStorageBlob -Container containername -Blob blobname 
Get-AzStorageBlobContent -CloudBlob $blob.ICloudBlob -Destination "C:\test"

This example first get a blob object and save it in a variable, then download blob content with the blob object.

Example 5: Download a blob content with blob Uri

Get-AzStorageBlobContent -Uri $blobUri -Destination "C:\test" -Force

This example will download a blob content with Uri, the Uri can be a Uri with Sas token. If the blob is on a managed disk account, and server requires a bearer token besides Sas Uri to download, the cmdlet will try to generate a bearer token with server returned audience and the login AAD user credentail, then download blob with both Sas Uri and bearer token.

Parameters

-AbsoluteUri

Blob uri to download from.

Type:String
Aliases:Uri, BlobUri
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-AsJob

Run cmdlet in the background.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Blob

Specifies the name of the blob to be downloaded.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-BlobBaseClient

BlobBaseClient Object

Type:BlobBaseClient
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-CheckMd5

Specifies whether to check the Md5 sum for the downloaded file.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ClientTimeoutPerRequest

Specifies the client-side time-out interval, in seconds, for one service request. If the previous call fails in the specified interval, this cmdlet retries the request. If this cmdlet does not receive a successful response before the interval elapses, this cmdlet returns an error.

Type:Nullable<T>[Int32]
Aliases:ClientTimeoutPerRequestInSeconds
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CloudBlob

Specifies a cloud blob. To obtain a CloudBlob object, use the Get-AzStorageBlob cmdlet.

Type:CloudBlob
Aliases:ICloudBlob
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-CloudBlobContainer

Specifies a CloudBlobContainer object from the Azure storage client library. You can create it or use the Get-AzStorageContainer cmdlet.

Type:CloudBlobContainer
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ConcurrentTaskCount

Specifies the maximum concurrent network calls. You can use this parameter to limit the concurrency to throttle local CPU and bandwidth usage by specifying the maximum number of concurrent network calls. The specified value is an absolute count and is not multiplied by the core count. This parameter can help reduce network connection problems in low bandwidth environments, such as 100 kilobits per second. The default value is 10.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Prompts you for confirmation before running the cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Container

Specifies the name of container that has the blob you want to download.

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Context

Specifies the Azure storage account from which you want to download blob content. You can use the New-AzStorageContext cmdlet to create a storage context.

Type:IStorageContext
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DefaultProfile

The credentials, account, tenant, and subscription used for communication with Azure.

Type:IAzureContextContainer
Aliases:AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Destination

Specifies the location to store the downloaded file.

Type:String
Aliases:Path
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Overwrites an existing file without confirmation.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ServerTimeoutPerRequest

Specifies the service side time-out interval, in seconds, for a request. If the specified interval elapses before the service processes the request, the storage service returns an error.

Type:Nullable<T>[Int32]
Aliases:ServerTimeoutPerRequestInSeconds
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TagCondition

Optional Tag expression statement to check match condition. The blob request will fail when the blob tags does not match the given expression. See details in https://learn.microsoft.com/en-us/rest/api/storageservices/specifying-conditional-headers-for-blob-service-operations#tags-conditional-operations.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Inputs

CloudBlob

CloudBlobContainer

IStorageContext

Outputs

AzureStorageBlob

Notes

  • If the blob name is invalid for local computer, this cmdlet autoresolves it, if it is possible.