Azure PowerShell Az.Storage Module

Examples for using the Az.Storage module in Azure PowerShell.

Module Overview

The Az.Storage module provides cmdlets for managing Azure Storage resources. This includes managing storage accounts, containers, blobs, file shares, queues, and tables.

With this module, you can perform a wide range of operations, such as:

This documentation provides practical examples to help you quickly get started with managing your Azure Storage resources using PowerShell.

Practical Examples

1. Create a Storage Account

This example shows how to create a new general-purpose v2 storage account.

# Define variables $resourceGroupName = "MyResourceGroup" $storageAccountName = "mystorageaccount" + (Get-Random -Maximum 99999) $location = "East US" $sku = "Standard_LRS" # Create the resource group if it doesn't exist if (-not (Get-AzResourceGroup -Name $resourceGroupName -ErrorAction SilentlyContinue)) { New-AzResourceGroup -Name $resourceGroupName -Location $location } # Create the storage account New-AzStorageAccount ` -ResourceGroupName $resourceGroupName ` -Name $storageAccountName ` -Location $location ` -SkuName $sku ` -Kind StorageV2 Write-Host "Storage account '$storageAccountName' created successfully."

2. Create a Blob Container

This example demonstrates how to create a new blob container within a storage account.

# Get the storage account object $storageAccount = Get-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount1234" # Get the storage context $ctx = $storageAccount.Context # Create a new container New-AzStorageContainer -Name "mycontainer" -Context $ctx -Permission Blob Write-Host "Container 'mycontainer' created successfully."

3. Upload a Blob

This example shows how to upload a file as a blob to a container.

# Get the storage account object $storageAccount = Get-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount1234" # Get the storage context $ctx = $storageAccount.Context # Upload a file to the container Set-AzStorageBlobContent ` -File "C:\path\to\your\local\file.txt" ` -Container "mycontainer" ` -Blob "myuploadedblob.txt" ` -Context $ctx Write-Host "File uploaded as blob 'myuploadedblob.txt'."

4. Download a Blob

This example demonstrates how to download a blob from a container.

# Get the storage account object $storageAccount = Get-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount1234" # Get the storage context $ctx = $storageAccount.Context # Download the blob Get-AzStorageBlobContent ` -Container "mycontainer" ` -Blob "myuploadedblob.txt" ` -Destination "C:\path\to\your\local\downloaded_file.txt" ` -Context $ctx Write-Host "Blob downloaded to 'C:\path\to\your\local\downloaded_file.txt'."

5. List Containers

This example shows how to list all containers in a storage account.

# Get the storage account object $storageAccount = Get-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount1234" # Get the storage context $ctx = $storageAccount.Context # List containers Get-AzStorageContainer -Context $ctx | Format-Table Name, LastModified

6. List Blobs

This example demonstrates how to list all blobs in a container.

# Get the storage account object $storageAccount = Get-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount1234" # Get the storage context $ctx = $storageAccount.Context # List blobs in a container Get-AzStorageBlob -Container "mycontainer" -Context $ctx | Format-Table Name, Length, LastModified

Key Cmdlets

The Az.Storage module offers a comprehensive set of cmdlets for managing Azure Storage. Here are some of the most commonly used ones:

Storage Accounts

  • Get-AzStorageAccount: Retrieves storage accounts.
  • New-AzStorageAccount: Creates a storage account.
  • Set-AzStorageAccount: Modifies properties of a storage account.
  • Remove-AzStorageAccount: Deletes a storage account.
  • New-AzStorageAccountKey: Regenerates access keys for a storage account.

Containers

  • Get-AzStorageContainer: Retrieves storage containers.
  • New-AzStorageContainer: Creates a storage container.
  • Set-AzStorageContainer: Modifies properties of a storage container.
  • Remove-AzStorageContainer: Deletes a storage container.

Blobs

  • Get-AzStorageBlob: Retrieves blobs.
  • Set-AzStorageBlobContent: Uploads blob content.
  • Get-AzStorageBlobContent: Downloads blob content.
  • Remove-AzStorageBlob: Deletes blobs.
  • New-AzStorageBlobSASToken: Generates a Shared Access Signature (SAS) token for a blob.

File Shares

  • Get-AzStorageShare: Retrieves file shares.
  • New-AzStorageShare: Creates a file share.
  • Remove-AzStorageShare: Deletes a file share.

Queues

  • Get-AzStorageQueue: Retrieves storage queues.
  • New-AzStorageQueue: Creates a storage queue.
  • Remove-AzStorageQueue: Deletes a storage queue.
  • Get-AzStorageQueueMessage: Retrieves messages from a queue.
  • Add-AzStorageQueueMessage: Adds a message to a queue.

Tables

  • Get-AzStorageTable: Retrieves storage tables.
  • New-AzStorageTable: Creates a storage table.
  • Remove-AzStorageTable: Deletes a storage table.