Ladda ned blobar från Azure Blob Storage med hjälp av AzCopy
Du kan ladda ned blobar och kataloger från Blob Storage med hjälp av kommandoradsverktyget AzCopy v10.
Om du vill se exempel på andra typer av uppgifter, till exempel att ladda upp filer, synkronisera med Blob Storage eller kopiera blobar mellan konton, kan du läsa länkarna som visas i avsnittet Nästa steg i den här artikeln.
Kom igång
I artikeln Kom igång med AzCopy kan du ladda ned AzCopy och lära dig mer om hur du kan ange autentiseringsuppgifter för auktorisering till lagringstjänsten.
Kommentar
Exemplen i den här artikeln förutsätter att du har angett autentiseringsuppgifter för auktorisering med hjälp av Microsoft Entra-ID.
Om du hellre vill använda en SAS-token för att auktorisera åtkomst till blobdata kan du lägga till den token till resurs-URL:en i varje AzCopy-kommando. Exempel: 'https://<storage-account-name>.blob.core.windows.net/<container-name><SAS-token>'
.
Ladda ned en blob
Ladda ned en blob med hjälp av kommandot azcopy copy .
Dricks
Det här exemplet omger sökvägsargument med enkla citattecken ('''). Använd enkla citattecken i alla kommandogränssnitt förutom Windows Command Shell (cmd.exe). Om du använder ett Windows-kommandogränssnitt (cmd.exe) omger du sökvägsargument med dubbla citattecken ("") i stället för enkla citattecken ('').
Syntax
azcopy copy 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>/<blob-path>' '<local-file-path>'
Exempel
azcopy copy 'https://mystorageaccount.blob.core.windows.net/mycontainer/myTextFile.txt' 'C:\myDirectory\myTextFile.txt'
Exempel (Data Lake Storage-slutpunkt)
azcopy copy 'https://mystorageaccount.dfs.core.windows.net/mycontainer/myTextFile.txt' 'C:\myDirectory\myTextFile.txt'
Kommentar
Content-md5
Om egenskapsvärdet för en blob innehåller en hash beräknar AzCopy en MD5-hash för nedladdade data och verifierar att MD5-hashen som lagras i blobens Content-md5
egenskap matchar den beräknade hashen. Om dessa värden inte matchar misslyckas nedladdningen om du inte åsidosätter det här beteendet genom att lägga till --check-md5=NoCheck
eller --check-md5=LogOnly
till kopieringskommandot.
Ladda ned en katalog
Ladda ned en katalog med hjälp av kommandot azcopy copy .
Dricks
Det här exemplet omger sökvägsargument med enkla citattecken ('''). Använd enkla citattecken i alla kommandogränssnitt förutom Windows Command Shell (cmd.exe). Om du använder ett Windows-kommandogränssnitt (cmd.exe) omger du sökvägsargument med dubbla citattecken ("") i stället för enkla citattecken ('').
Syntax
azcopy copy 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>/<directory-path>' '<local-directory-path>' --recursive
Exempel
azcopy copy 'https://mystorageaccount.blob.core.windows.net/mycontainer/myBlobDirectory' 'C:\myDirectory' --recursive
Exempel (Data Lake Storage-slutpunkt)
azcopy copy 'https://mystorageaccount.dfs.core.windows.net/mycontainer/myBlobDirectory' 'C:\myDirectory' --recursive
Det här exemplet resulterar i en katalog med namnet C:\myDirectory\myBlobDirectory
som innehåller alla nedladdade blobar.
Ladda ned kataloginnehåll
Du kan ladda ned innehållet i en katalog utan att kopiera själva katalogen med hjälp av jokertecknet (*).
Dricks
Det här exemplet omger sökvägsargument med enkla citattecken ('''). Använd enkla citattecken i alla kommandogränssnitt förutom Windows Command Shell (cmd.exe). Om du använder ett Windows-kommandogränssnitt (cmd.exe) omger du sökvägsargument med dubbla citattecken ("") i stället för enkla citattecken ('').
Kommentar
För närvarande stöds det här scenariot endast för konton som inte har ett hierarkiskt namnområde.
Syntax
azcopy copy 'https://<storage-account-name>.blob.core.windows.net/<container-name>/*' '<local-directory-path>/'
Exempel
azcopy copy 'https://mystorageaccount.blob.core.windows.net/mycontainer/myBlobDirectory/*' 'C:\myDirectory'
--recursive
Lägg till flaggan för att ladda ned filer i alla underkataloger.
Ladda ned specifika blobar
Du kan ladda ned specifika blobar med hjälp av fullständiga filnamn, partiella namn med jokertecken (*) eller med hjälp av datum och tider.
Dricks
De här exemplen omger sökvägsargument med enkla citattecken ('''). Använd enkla citattecken i alla kommandogränssnitt förutom Windows Command Shell (cmd.exe). Om du använder ett Windows-kommandogränssnitt (cmd.exe) omger du sökvägsargument med dubbla citattecken ("") i stället för enkla citattecken ('').
Ange flera fullständiga blobnamn
Använd kommandot azcopy copy med alternativet --include-path
. Avgränsa enskilda blobnamn med hjälp av ett semikolon (;
).
Syntax
azcopy copy 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-or-directory-name>' '<local-directory-path>' --include-path <semicolon-separated-file-list>
Exempel
azcopy copy 'https://mystorageaccount.blob.core.windows.net/mycontainer/FileDirectory' 'C:\myDirectory' --include-path 'photos;documents\myFile.txt' --recursive
Exempel (Data Lake Storage-slutpunkt)
azcopy copy 'https://mystorageaccount.dfs.core.windows.net/mycontainer/FileDirectory' 'C:\myDirectory' --include-path 'photos;documents\myFile.txt'--recursive
I det här exemplet överför https://mystorageaccount.blob.core.windows.net/mycontainer/FileDirectory/photos
AzCopy katalogen och https://mystorageaccount.blob.core.windows.net/mycontainer/FileDirectory/documents/myFile.txt
filen. Inkludera alternativet --recursive
att överföra alla blobar i https://mystorageaccount.blob.core.windows.net/mycontainer/FileDirectory/photos
katalogen.
Du kan också exkludera blobar med hjälp av alternativet --exclude-path
. Mer information finns i azcopy copy reference docs (azcopy copy reference docs).
Använda jokertecken
Använd kommandot azcopy copy med alternativet --include-pattern
. Ange partiella namn som innehåller jokertecken. Avgränsa namn med hjälp av ett semikolin (;
).
Syntax
azcopy copy 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-or-directory-name>' '<local-directory-path>' --include-pattern <semicolon-separated-file-list-with-wildcard-characters>
Exempel
azcopy copy 'https://mystorageaccount.blob.core.windows.net/mycontainer/FileDirectory' 'C:\myDirectory' --include-pattern 'myFile*.txt;*.pdf*'
Exempel (hierarkiskt namnområde)
azcopy copy 'https://mystorageaccount.dfs.core.windows.net/mycontainer/FileDirectory' 'C:\myDirectory' --include-pattern 'myFile*.txt;*.pdf*'
Du kan också exkludera blobar med hjälp av alternativet --exclude-pattern
. Mer information finns i azcopy copy reference docs (azcopy copy reference docs).
Alternativen --include-pattern
och --exclude-pattern
gäller endast för blobnamn och inte för sökvägen. Om du vill kopiera alla textfiler (blobar) som finns i ett katalogträd använder -recursive
du alternativet för att hämta hela katalogträdet och använder -include-pattern
sedan och anger *.txt
för att hämta alla textfiler.
Ladda ned blobar som har ändrats före eller efter ett datum och en tid
Använd kommandot azcopy copy med --include-before
alternativet eller --include-after
. Ange ett datum och en tid i ISO-8601-format (till exempel: 2020-08-19T15:04:00Z
).
I följande exempel hämtas filer som har ändrats på eller efter det angivna datumet.
Syntax
azcopy copy 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-or-directory-name>/*' '<local-directory-path>' --include-after <Date-Time-in-ISO-8601-format>
Exempel
azcopy copy 'https://mystorageaccount.blob.core.windows.net/mycontainer/FileDirectory/*' 'C:\myDirectory' --include-after '2020-08-19T15:04:00Z'
Exempel (Data Lake Storage-slutpunkt)
azcopy copy 'https://mystorageaccount.dfs.core.windows.net/mycontainer/FileDirectory/*' 'C:\myDirectory' --include-after '2020-08-19T15:04:00Z'
Detaljerad referens finns i referensdokumenten för azcopy-kopiering .
Ladda ned tidigare versioner av en blob
Om du har aktiverat blobversionshantering kan du ladda ned en eller flera tidigare versioner av en blob.
Skapa först en textfil som innehåller en lista över versions-ID:t. Varje versions-ID måste visas på en separat rad. Till exempel:
2020-08-17T05:50:34.2199403Z
2020-08-17T05:50:34.5041365Z
2020-08-17T05:50:36.7607103Z
Använd sedan kommandot azcopy copy med alternativet --list-of-versions
. Ange platsen för textfilen som innehåller listan över versioner (till exempel: D:\\list-of-versions.txt
).
Ladda ned en blobögonblicksbild
Du kan ladda ned en blobögonblicksbild genom att referera till DateTime-värdet för en blobögonblicksbild.
Syntax
azcopy copy 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>/<blob-path>?sharesnapshot=<DateTime-of-snapshot>' '<local-file-path>'
Exempel
azcopy copy 'https://mystorageaccount.blob.core.windows.net/mycontainer/myTextFile.txt?sharesnapshot=2020-09-23T08:21:07.0000000Z' 'C:\myDirectory\myTextFile.txt'
Exempel (Data Lake Storage-slutpunkt)
azcopy copy 'https://mystorageaccount.dfs.core.windows.net/mycontainer/myTextFile.txt?sharesnapshot=2020-09-23T08:21:07.0000000Z' 'C:\myDirectory\myTextFile.txt'
Kommentar
Om du använder en SAS-token för att auktorisera åtkomst till blobdata lägger du till ögonblicksbilden DateTime efter SAS-token. Exempel: 'https://mystorageaccount.blob.core.windows.net/mycontainer/myTextFile.txt?sv=2018-03-28&ss=bjqt&srs=sco&sp=rjklhjup&se=2019-05-10T04:37:48Z&st=2019-05-09T20:37:48Z&spr=https&sig=/SOVEFfsKDqRry4bk3qz1vAQFwY5DDzp2%2B/3Eykf/JLs%3D&sharesnapshot=2020-09-23T08:21:07.0000000Z'
.
Ladda ned med valfria flaggor
Du kan justera nedladdningsåtgärden med hjälp av valfria flaggor. Här är några exempel.
Scenario | Flagga |
---|---|
Dekomprimera filer automatiskt. | --Dekomprimera |
Ange hur detaljerade du vill att dina kopieringsrelaterade loggposter ska vara. | --log-level=[WARNING|FEL|INFO|INGEN] |
Ange om och hur du skriver över de filer och blobar som står i konflikt på målet. | --overwrite=[true|false|ifSourceNewer|prompt] |
En fullständig lista finns i alternativ.
Ladda ned innehåll på statisk webbplats
AzCopy stöder inte nedladdning av data från statiska webbplatser som finns i Azure Storage via den offentliga slutpunkten, till exempel https://mystorageaccount.z12.web.core.windows.net
. Använd i stället containern $web
vid blobslutpunkten för att ladda ned filer från din statiska webbplats.
azcopy copy 'https://mystorageaccount.blob.core.windows.net/$web/*' 'C:\myDirectory' --recursive
Nästa steg
Hitta fler exempel i de här artiklarna:
- Exempel: Ladda upp
- Exempel: Kopiera mellan konton
- Exempel: Synkronisera
- Exempel: Amazon S3-bucketar
- Exempel: Google Cloud Storage
- Exempel: Azure Files
- Självstudie: Migrera lokala data till molnlagring med hjälp av AzCopy
Se de här artiklarna om du vill konfigurera inställningar, optimera prestanda och felsöka problem: