Delen via


Bestanden uploaden naar Azure Blob Storage met behulp van AzCopy

U kunt bestanden en mappen uploaden naar Blob Storage met behulp van het opdrachtregelprogramma AzCopy v10.

Zie de koppelingen in de sectie Volgende stappen van dit artikel voor voorbeelden voor andere typen taken, zoals het downloaden van blobs, het synchroniseren met Blob Storage of het kopiëren van blobs tussen accounts.

Aan de slag

Zie het artikel Aan de slag met AzCopy om AzCopy te downloaden en meer te weten te komen over de manieren waarop u autorisatiereferenties kunt opgeven voor de opslagservice.

Notitie

In de voorbeelden in dit artikel wordt ervan uitgegaan dat u autorisatiereferenties opgeeft met behulp van Microsoft Entra-id.

Als u een SAS-token wilt gebruiken om toegang tot blobgegevens te autoriseren, voegt u dat token toe aan de resource-URL in elke AzCopy-opdracht. Voorbeeld: 'https://<storage-account-name>.blob.core.windows.net/<container-name><SAS-token>'.

Een container maken

Gebruik de opdracht azcopy make om een container te maken.

Tip

Deze voorbeelden plaatsen padargumenten tussen enkele aanhalingstekens (''). Gebruik enkele aanhalingstekens in alle opdrachtshells, met uitzondering van de Windows Command Shell (cmd.exe). Als u een Windows Command Shell (cmd.exe) gebruikt, plaatst u padargumenten tussen dubbele aanhalingstekens ("") in plaats van enkele aanhalingstekens ('').

Syntaxis

azcopy make 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>'

Voorbeeld

azcopy make 'https://mystorageaccount.blob.core.windows.net/mycontainer'

Voorbeeld (Data Lake Storage-eindpunt)

azcopy make 'https://mystorageaccount.dfs.core.windows.net/mycontainer'

Zie azcopy make voor gedetailleerde referentiedocumenten.

Een bestand uploaden

Upload een bestand met behulp van de opdracht azcopy copy .

Tip

Deze voorbeelden plaatsen padargumenten tussen enkele aanhalingstekens (''). Gebruik enkele aanhalingstekens in alle opdrachtshells, met uitzondering van de Windows Command Shell (cmd.exe). Als u een Windows Command Shell (cmd.exe) gebruikt, plaatst u padargumenten tussen dubbele aanhalingstekens ("") in plaats van enkele aanhalingstekens ('').

Syntaxis

azcopy copy '<local-file-path>' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>/<blob-name>'

Voorbeeld

azcopy copy 'C:\myDirectory\myTextFile.txt' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myTextFile.txt'

Voorbeeld (Data Lake Storage-eindpunt)

azcopy copy 'C:\myDirectory\myTextFile.txt' 'https://mystorageaccount.dfs.core.windows.net/mycontainer/myTextFile.txt'

U kunt een bestand ook uploaden met behulp van een jokerteken (*) ergens in het bestandspad of de bestandsnaam. Bijvoorbeeld: 'C:\myDirectory\*.txt', of C:\my*\*.txt.

Een map uploaden

Upload een map met behulp van de opdracht azcopy copy .

In dit voorbeeld wordt een map (en alle bestanden in die map) gekopieerd naar een blobcontainer. Het resultaat is een map in de container met dezelfde naam.

Tip

Deze voorbeelden plaatsen padargumenten tussen enkele aanhalingstekens (''). Gebruik enkele aanhalingstekens in alle opdrachtshells, met uitzondering van de Windows Command Shell (cmd.exe). Als u een Windows Command Shell (cmd.exe) gebruikt, plaatst u padargumenten tussen dubbele aanhalingstekens ("") in plaats van enkele aanhalingstekens ('').

Syntaxis

azcopy copy '<local-directory-path>' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>' --recursive

Voorbeeld

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer' --recursive

Voorbeeld (Data Lake Storage-eindpunt)

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.dfs.core.windows.net/mycontainer' --recursive

Als u naar een map in de container wilt kopiëren, geeft u de naam van die map op in de opdrachtreeks.

Voorbeeld

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myBlobDirectory' --recursive

Voorbeeld (Data Lake Storage-eindpunt)

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.dfs.core.windows.net/mycontainer/myBlobDirectory' --recursive

Als u de naam opgeeft van een map die niet in de container bestaat, maakt AzCopy een nieuwe map met die naam.

Inhoud van map uploaden

Upload de inhoud van een map met behulp van de opdracht azcopy copy . Gebruik het jokerteken (*) om de inhoud te uploaden zonder de map zelf te kopiëren.

Tip

Deze voorbeelden plaatsen padargumenten tussen enkele aanhalingstekens (''). Gebruik enkele aanhalingstekens in alle opdrachtshells, met uitzondering van de Windows Command Shell (cmd.exe). Als u een Windows Command Shell (cmd.exe) gebruikt, plaatst u padargumenten tussen dubbele aanhalingstekens ("") in plaats van enkele aanhalingstekens ('').

Syntaxis

azcopy copy '<local-directory-path>\*' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>/<directory-path>'

Voorbeeld

azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myBlobDirectory'

Voorbeeld (Data Lake Storage-eindpunt)

azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.dfs.core.windows.net/mycontainer/myBlobDirectory'

Voeg de --recursive vlag toe om bestanden in alle submappen te uploaden.

Specifieke bestanden uploaden

U kunt specifieke bestanden uploaden met volledige bestandsnamen, gedeeltelijke namen met jokertekens (*) of door datums en tijden te gebruiken.

Tip

Deze voorbeelden plaatsen padargumenten tussen enkele aanhalingstekens (''). Gebruik enkele aanhalingstekens in alle opdrachtshells, met uitzondering van de Windows Command Shell (cmd.exe). Als u een Windows Command Shell (cmd.exe) gebruikt, plaatst u padargumenten tussen dubbele aanhalingstekens ("") in plaats van enkele aanhalingstekens ('').

Meerdere volledige bestandsnamen opgeven

Gebruik de opdracht azcopy copy met de --include-path optie. Afzonderlijke bestandsnamen scheiden met behulp van een puntkomma (;).

Syntaxis

azcopy copy '<local-directory-path>' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>' --include-path <semicolon-separated-file-list>

Voorbeeld

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer' --include-path 'photos;documents\myFile.txt' --recursive'

Voorbeeld (Data Lake Storage-eindpunt)

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.dfs.core.windows.net/mycontainer' --include-path 'photos;documents\myFile.txt' --recursive'

In dit voorbeeld draagt AzCopy de C:\myDirectory\photos map en het C:\myDirectory\documents\myFile.txt bestand over. Neem de --recursive optie op om alle bestanden in de C:\myDirectory\photos map over te dragen.

U kunt bestanden ook uitsluiten met behulp van de --exclude-path optie. Zie azcopy copy reference docs voor meer informatie.

Jokertekens gebruiken

Gebruik de opdracht azcopy copy met de --include-pattern optie. Geef gedeeltelijke namen op die de jokertekens bevatten. Scheid namen met behulp van een puntkomma (;).

Syntaxis

azcopy copy '<local-directory-path>' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>' --include-pattern <semicolon-separated-file-list-with-wildcard-characters>

Voorbeeld

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer' --include-pattern 'myFile*.txt;*.pdf*'

Voorbeeld (Data Lake Storage-eindpunt)

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.dfs.core.windows.net/mycontainer' --include-pattern 'myFile*.txt;*.pdf*'

U kunt bestanden ook uitsluiten met behulp van de --exclude-pattern optie. Zie azcopy copy reference docs voor meer informatie.

De --include-pattern opties zijn --exclude-pattern alleen van toepassing op bestandsnamen en niet op het pad. Als u alle tekstbestanden in een mapstructuur wilt kopiëren, gebruikt u de -recursive optie om de hele mapstructuur op te halen en gebruikt u vervolgens de -include-pattern en geef *.txt deze op om alle tekstbestanden op te halen.

Bestanden uploaden die zijn gewijzigd vóór of na een datum en tijd

Gebruik de opdracht azcopy copy met de --include-before of --include-after optie. Geef een datum en tijd op in ISO-8601-indeling (bijvoorbeeld: 2020-08-19T15:04:00Z).

In de volgende voorbeelden worden bestanden geüpload die zijn gewijzigd op of na de opgegeven datum.

Syntaxis

azcopy copy '<local-directory-path>\*' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-or-directory-name>' --include-after <Date-Time-in-ISO-8601-format>

Voorbeeld

azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.blob.core.windows.net/mycontainer/FileDirectory'  --include-after '2020-08-19T15:04:00Z'

Voorbeeld (Data Lake Storage-eindpunt)

azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.dfs.core.windows.net/mycontainer/FileDirectory'   --include-after '2020-08-19T15:04:00Z'

Zie de referentiedocumenten voor azcopy-kopieën voor gedetailleerde naslaginformatie.

Uploaden met indextags

U kunt een bestand uploaden en blobindextags toevoegen aan de doel-blob.

Als u Microsoft Entra-autorisatie gebruikt, wijst u de rol Eigenaar van opslagblobgegevens toe aan uw beveiligingsprincipaal of geeft u deze toestemming voor de bewerking van de Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/writeAzure-resourceprovider via een aangepaste Azure-rol. Als u een SAS-token (Shared Access Signature) gebruikt, moet het token toegang bieden tot de tags van de blob via de t SAS-machtiging.

Als u tags wilt toevoegen, gebruikt u de --blob-tags optie met een sleutel-waardepaar met URL-codering. Als u bijvoorbeeld de sleutel my tag en de waarde my tag value wilt toevoegen, neemt u deze op --blob-tags='my%20tag=my%20tag%20value' in de doelparameter.

Scheid meerdere indextags met een ampersand (&). Als u bijvoorbeeld de sleutel my second tag en de waarde my second tag valuewilt toevoegen, is --blob-tags='my%20tag=my%20tag%20value&my%20second%20tag=my%20second%20tag%20value'de volledige optietekenreeks.

In de volgende voorbeelden ziet u hoe u de --blob-tags optie gebruikt.

Tip

Deze voorbeelden plaatsen padargumenten tussen enkele aanhalingstekens (''). Gebruik enkele aanhalingstekens in alle opdrachtshells, met uitzondering van de Windows Command Shell (cmd.exe). Als u een Windows Command Shell (cmd.exe) gebruikt, plaatst u padargumenten tussen dubbele aanhalingstekens ("") in plaats van enkele aanhalingstekens ('').

Een bestand uploaden

azcopy copy 'C:\myDirectory\myTextFile.txt' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myTextFile.txt' --blob-tags='my%20tag=my%20tag%20value&my%20second%20tag=my%20second%20tag%20value'

Een map uploaden

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer' --recursive --blob-tags='my%20tag=my%20tag%20value&my%20second%20tag=my%20second%20tag%20value'

Inhoud van map uploaden

azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myBlobDirectory' --blob-tags='my%20tag=my%20tag%20value&my%20second%20tag=my%20second%20tag%20value'

Notitie

Als u een map voor de bron opgeeft, hebben alle blobs die u naar het doel kopieert dezelfde tags die u in de opdracht opgeeft.

Uploaden met optionele vlaggen

U kunt uw uploadbewerking aanpassen met behulp van optionele vlaggen. Hier volgen enkele voorbeelden.

Scenario Vlag
Upload bestanden als toevoeg-blobs of pagina-blobs. --blob-type=[BlockBlob|PageBlob |AppendBlob]
Upload naar een specifieke toegangslaag (zoals de archieflaag). --block-blob-tier=[Geen|Hot|Statisch|Archiveren]

Zie de opties voor een volledige lijst.

Bron- en doeltypen opgeven

AzCopy gebruikt de --from-to parameter om de bron- en doelresource expliciet te definiëren om zeker te zijn dat de automatische detectie niet faalt, zoals in pijpscenario's of emulators. Deze parameter helpt AzCopy de context van de overdracht te begrijpen en dienovereenkomstig te optimaliseren.

VanTo-waarde Description
LocalBlob Uploaden van lokaal bestandssysteem naar Azure Blob Storage
LocalBlobFS Uploaden van lokaal bestandssysteem naar Azure Data Lake Gen2 (BlobFS)
PipeBlob Gegevens streamen van een pijp naar Azure Blob Storage
PipeFile Gegevens streamen van een pijp naar Azure File Storage

Volgende stappen

Bekijk meer voorbeelden in deze artikelen:

Zie deze artikelen voor het configureren van instellingen, het optimaliseren van de prestaties en het oplossen van problemen: