Szybki start: przekazywanie, pobieranie i wyświetlanie obiektów blob za pomocą programu Azure PowerShellQuickstart: Upload, download, and list blobs by using Azure PowerShell

Moduł Azure PowerShell umożliwia tworzenie zasobów platformy Azure i zarządzanie nimi.Use the Azure PowerShell module to create and manage Azure resources. Tworzenie zasobów platformy Azure lub zarządzanie nimi może odbywać się w wierszu polecenia programu PowerShell lub za pośrednictwem skryptów.Creating or managing Azure resources can be done from the PowerShell command line or in scripts. Ten przewodnik zawiera opis sposobu użycia programu PowerShell do transferowania plików między dyskiem lokalnym i usługą Azure Blob Storage.This guide describes using PowerShell to transfer files between local disk and Azure Blob storage.

Uwaga

Funkcje opisane w tym artykule są dostępne dla kont, które mają hierarchiczną przestrzeń nazw tylko wtedy, gdy rejestrujesz się w publicznej wersji zapoznawczej dostępu wieloprotokołowego na Data Lake Storage.The features described in this article are available to accounts that have a hierarchical namespace only if you enroll in the public preview of multi-protocol access on Data Lake Storage. Aby zapoznać się z ograniczeniami, zobacz artykuł znane problemy .To review limitations, see the known issues article.

Wymagania wstępnePrerequisites

Aby uzyskać dostęp do usługi Azure Storage, potrzebujesz subskrypcji platformy Azure.To access Azure Storage, you'll need an Azure subscription. Jeśli nie masz jeszcze subskrypcji, przed rozpoczęciem utwórz bezpłatne konto.If you don't already have a subscription, then create a free account before you begin.

Uwaga

Ten artykuł został zaktualizowany o korzystanie z nowego modułu Azure PowerShell Az.This article has been updated to use the new Azure PowerShell Az module. Nadal możesz używać modułu AzureRM, który będzie nadal otrzymywać poprawki błędów do co najmniej grudnia 2020 r.You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Aby dowiedzieć się więcej na temat nowego modułu Az i zgodności z modułem AzureRM, zobacz Wprowadzenie do nowego modułu Az programu Azure PowerShell.To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Aby uzyskać instrukcje dotyczące instalacji modułu Az, zobacz Instalowanie programu Azure PowerShell.For Az module installation instructions, see Install Azure PowerShell.

Dla tego przewodnika Szybki start wymagany jest moduł Az Azure PowerShell w wersji 0.7 lub nowszej.This quickstart requires the Azure PowerShell module Az version 0.7 or later. Uruchom polecenie Get-InstalledModule -Name Az -AllVersions | select Name,Version, aby dowiedzieć się, jaka wersja jest używana.Run Get-InstalledModule -Name Az -AllVersions | select Name,Version to find the version. Jeśli konieczna będzie instalacja lub uaktualnienie, zobacz Instalowanie modułu Azure PowerShell.If you need to install or upgrade, see Install Azure PowerShell module.

Logowanie do platformy AzureSign in to Azure

Zaloguj się do subskrypcji platformy Azure za pomocą polecenia Connect-AzAccount i postępuj zgodnie z instrukcjami wyświetlanymi na ekranie.Sign in to your Azure subscription with the Connect-AzAccount command and follow the on-screen directions.

Connect-AzAccount

Jeśli nie wiesz, której lokalizacji użyć, możesz wyświetlić listę dostępnych lokalizacji.If you don't know which location you want to use, you can list the available locations. Wyświetl listę lokalizacji przy użyciu poniższego przykładu kodu i znajdź lokalizację, której chcesz użyć.Display the list of locations by using the following code example and find the one you want to use. W tym przykładzie użyto lokalizacji eastus.This example uses eastus. Zapisz lokalizację w zmiennej i używaj tej zmiennej, aby zmieniać lokalizację w jednym miejscu.Store the location in a variable and use the variable so you can change it in one place.

Get-AzLocation | select Location
$location = "eastus"

Tworzenie grupy zasobówCreate a resource group

Utwórz grupę zasobów platformy Azure za pomocą polecenia New-AzResourceGroup.Create an Azure resource group with New-AzResourceGroup. Grupa zasobów to logiczny kontener przeznaczony do wdrażania zasobów platformy Azure i zarządzania nimi.A resource group is a logical container into which Azure resources are deployed and managed.

$resourceGroup = "myResourceGroup"
New-AzResourceGroup -Name $resourceGroup -Location $location

Tworzenie konta magazynuCreate a storage account

Utwórz standardowe konto magazynu ogólnego przeznaczenia z replikacją LRS za pomocą polecenia New-AzStorageAccount.Create a standard, general-purpose storage account with LRS replication by using New-AzStorageAccount. Następnie pobierz kontekst konta magazynu, który definiuje konto magazynu do użycia.Next, get the storage account context that defines the storage account you want to use. Wykonując działania względem konta magazynu, odwołuj się do kontekstu, zamiast wielokrotnie przekazywać poświadczenia.When acting on a storage account, reference the context instead of repeatedly passing in the credentials. Użyj poniższego przykładu, aby utworzyć konto magazynu o nazwie mystorageaccount z magazynem lokalnie nadmiarowym (LRS) i szyfrowaniem obiektów blob (włączonym domyślnie).Use the following example to create a storage account called mystorageaccount with locally redundant storage (LRS) and blob encryption (enabled by default).

$storageAccount = New-AzStorageAccount -ResourceGroupName $resourceGroup `
  -Name "mystorageaccount" `
  -SkuName Standard_LRS `
  -Location $location `

$ctx = $storageAccount.Context

Tworzenie konteneraCreate a container

Obiekty blob są zawsze przesyłane do kontenera.Blobs are always uploaded into a container. Możesz organizować grupy obiektów blob, tak jak organizujesz pliki w folderach na komputerze.You can organize groups of blobs like the way you organize your files on your computer in folders.

Określ nazwę kontenera, a następnie utwórz kontener przy użyciu polecenia New-AzStorageContainer.Set the container name, then create the container by using New-AzStorageContainer. Ustaw uprawnienia na blob, aby zezwolić na publiczny dostęp do plików.Set the permissions to blob to allow public access of the files. W tym przykładzie nazwą kontenera jest quickstartblobs.The container name in this example is quickstartblobs.

$containerName = "quickstartblobs"
New-AzStorageContainer -Name $containerName -Context $ctx -Permission blob

Przekazywanie obiektów blob do konteneraUpload blobs to the container

Usługa Blob Storage obsługuje blokowe, uzupełnialne i stronicowe obiekty blob.Blob storage supports block blobs, append blobs, and page blobs. Pliki VHD, które służą do tworzenia obsługi maszyn wirtualnych usługi IaaS, to stronicowe obiekty blob.VHD files that back IaaS VMs are page blobs. Uzupełnialne obiekty blob mogą służyć do rejestrowania, na przykład w sytuacji, w której konieczny jest zapis do pliku, a następnie dodawanie kolejnych informacji.Use append blobs for logging, such as when you want to write to a file and then keep adding more information. Większość plików przechowywanych w usłudze Blob Storage to blokowe obiekty blob.Most files stored in Blob storage are block blobs.

Aby przekazać plik do blokowego obiektu blob, pobierz odwołanie do kontenera i uzyskaj odwołanie do blokowego obiektu blob w tym kontenerze.To upload a file to a block blob, get a container reference, then get a reference to the block blob in that container. Po uzyskaniu odwołania do obiektu blob możesz przekazać do niego dane przy użyciu polecenia Set-AzStorageBlobContent.Once you have the blob reference, you can upload data to it by using Set-AzStorageBlobContent. Ta operacja tworzy obiekt blob, jeśli nie istnieje, lub zastępuje obiekt blob, jeśli istnieje.This operation creates the blob if it doesn't exist, or overwrites the blob if it exists.

Poniższe przykłady umożliwiają przekazanie plików Image001.jpg i Image002.png z folderu D:\_TestImages na dysku lokalnym do utworzonego kontenera.The following examples upload Image001.jpg and Image002.png from the D:\_TestImages folder on the local disk to the container you created.

# upload a file
Set-AzStorageBlobContent -File "D:\_TestImages\Image001.jpg" `
  -Container $containerName `
  -Blob "Image001.jpg" `
  -Context $ctx 

# upload another file
Set-AzStorageBlobContent -File "D:\_TestImages\Image002.png" `
  -Container $containerName `
  -Blob "Image002.png" `
  -Context $ctx

Przed kontynuowaniem można przesłać dowolną liczbę plików.Upload as many files as you like before continuing.

Wyświetlanie listy obiektów blob w kontenerzeList the blobs in a container

Pobierz listę obiektów blob w kontenerze za pomocą polecenia Get-AzStorageBlob.Get a list of blobs in the container by using Get-AzStorageBlob. W tym przykładzie przedstawiono tylko nazwy przekazanych obiektów blob.This example shows just the names of the blobs uploaded.

Get-AzStorageBlob -Container $ContainerName -Context $ctx | select Name

Pobieranie obiektów blobDownload blobs

Pobierz obiekty blob na swój dysk twardy.Download the blobs to your local disk. Dla każdego obiektu blob, który chcesz pobrać, określ nazwę i wywołaj polecenie Get-AzStorageBlobContent, aby pobrać obiekt blob.For each blob you want to download, set the name and call Get-AzStorageBlobContent to download the blob.

W tym przykładzie obiekty blob są pobierane do folderu D:\_TestImages\Downloads na dysku lokalnym.This example downloads the blobs to D:\_TestImages\Downloads on the local disk.

# download first blob
Get-AzStorageBlobContent -Blob "Image001.jpg" `
  -Container $containerName `
  -Destination "D:\_TestImages\Downloads\" `
  -Context $ctx 

# download another blob
Get-AzStorageBlobContent -Blob "Image002.png" `
  -Container $containerName `
  -Destination "D:\_TestImages\Downloads\" `
  -Context $ctx

Transfer danych przy użyciu narzędzia AzCopyData transfer with AzCopy

Narzędzie AzCopy to kolejna opcja umożliwiająca wydajny transfer danych do usługi Azure Storage z użyciem skryptów.The AzCopy utility is another option for high-performance scriptable data transfer for Azure Storage. Narzędzie AzCopy służy do transferowania danych do i z usług Blob, File i Table Storage.Use AzCopy to transfer data to and from Blob, File, and Table storage.

Oto przykładowe polecenie AzCopy umożliwiające przesłanie pliku o nazwie myfile.txt do kontenera mystoragecontainer w oknie programu PowerShell.As a quick example, here's the AzCopy command for uploading a file called myfile.txt to the mystoragecontainer container from within a PowerShell window.

./AzCopy `
    /Source:C:\myfolder `
    /Dest:https://mystorageaccount.blob.core.windows.net/mystoragecontainer `
    /DestKey:<storage-account-access-key> `
    /Pattern:"myfile.txt"

Oczyszczanie zasobówClean up resources

Usuń wszystkie utworzone zasoby.Remove all of the assets you've created. Najprostszym sposobem usunięcia elementów zawartości jest usunięcie grupy zasobów.The easiest way to remove the assets is to delete the resource group. Usunięcie grupy zasobów spowoduje także usunięcie wszystkich zasobów uwzględnionych w tej grupie.Removing the resource group also deletes all resources included within the group. W poniższym przykładzie usunięcie grupy zasobów powoduje usunięcie konta magazynu i samej grupy zasobów.In the following example, removing the resource group removes the storage account and the resource group itself.

Remove-AzResourceGroup -Name $resourceGroup

Następne krokiNext steps

W tym przewodniku Szybki start przeprowadzono transfer plików między dyskiem lokalnym a usługą Azure Blob Storage.In this quickstart, you transferred files between a local disk and Azure Blob storage. Aby dowiedzieć się więcej o pracy z magazynem obiektów blob przy użyciu programu PowerShell, przejdź do artykułu Jak używać programu Azure PowerShell z usługą Azure Storage.To learn more about working with Blob storage by using PowerShell, continue to How-to use Azure PowerShell with Azure Storage.

Dokumentacja poleceń cmdlet programu PowerShell dla usługi Microsoft Azure StorageMicrosoft Azure PowerShell Storage cmdlets reference

Microsoft Azure Storage ExplorerMicrosoft Azure Storage Explorer

  • Microsoft Azure Storage Explorer jest bezpłatną aplikacją autonomiczną oferowaną przez firmę Microsoft, która umożliwia wizualną pracę z danymi w usłudze Azure Storage w systemach Windows, macOS i Linux.Microsoft Azure Storage Explorer is a free, standalone app from Microsoft that enables you to work visually with Azure Storage data on Windows, macOS, and Linux.