Fájlok feltöltése az Azure Blob Storage-ba az AzCopy használatával

Az AzCopy v10 parancssori segédprogrammal fájlokat és könyvtárakat tölthet fel a Blob Storage-ba.

Más típusú feladatokra, például a blobok letöltésére, a blobtárolóval való szinkronizálásra vagy a blobok fiókok közötti másolására vonatkozó példákért tekintse meg a cikk Következő lépések szakaszában található hivatkozásokat.

Első lépések

Tekintse meg az AzCopy használatának első lépéseit ismertető cikket az AzCopy letöltéséhez, és ismerje meg, hogyan adhat meg hitelesítési hitelesítő adatokat a tárolási szolgáltatásnak.

Megjegyzés:

A cikkben szereplő példák feltételezik, hogy a Microsoft Entra ID használatával adta meg az engedélyezési hitelesítő adatokat.

Ha inkább SAS-jogkivonatot használ a blobadatokhoz való hozzáférés engedélyezéséhez, akkor ezt a jogkivonatot az egyes AzCopy-parancsok erőforrás-URL-címéhez fűzheti. For example: 'https://<storage-account-name>.blob.core.windows.net/<container-name><SAS-token>'.

Tároló létrehozása

Tároló létrehozásához használhatja az azcopy make parancsot.

Tipp.

Ez a példa az elérési utak argumentumait egyetlen idézőjelekkel ('') foglalja össze. A Windows command Shell (cmd.exe) kivételével minden parancshéjban használjon egyetlen idézőjelet. Ha Windows Command Shellt (cmd.exe) használ, az elérésiút-argumentumokat idézőjelek ('' ) helyett dupla idézőjelekkel ("") foglalja össze.

Szintaxis

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

Példa

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

Példa (Data Lake Storage-végpont)

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

Részletes referencia-dokumentációkért lásd az azcopy make című témakört.

Fájl feltöltése

Töltsön fel egy fájlt az azcopy copy paranccsal.

Tipp.

Ez a példa az elérési utak argumentumait egyetlen idézőjelekkel ('') foglalja össze. A Windows command Shell (cmd.exe) kivételével minden parancshéjban használjon egyetlen idézőjelet. Ha Windows Command Shellt (cmd.exe) használ, az elérésiút-argumentumokat idézőjelek ('' ) helyett dupla idézőjelekkel ("") foglalja össze.

Szintaxis

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

Példa

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

Példa (Data Lake Storage-végpont)

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

A fájlokat helyettesítő karakter (*) használatával is feltöltheti a fájl elérési útjának vagy fájlnevének tetszőleges pontjára. Például: 'C:\myDirectory\*.txt', vagy C:\my*\*.txt.

Könyvtár feltöltése

Töltsön fel egy könyvtárat az azcopy copy paranccsal.

Ez a példa egy könyvtárat (és az abban lévő összes fájlt) egy blobtárolóba másolja. Az eredmény egy könyvtár a tárolóban ugyanazzal a névvel.

Tipp.

Ez a példa az elérési utak argumentumait egyetlen idézőjelekkel ('') foglalja össze. A Windows command Shell (cmd.exe) kivételével minden parancshéjban használjon egyetlen idézőjelet. Ha Windows Command Shellt (cmd.exe) használ, az elérésiút-argumentumokat idézőjelek ('' ) helyett dupla idézőjelekkel ("") foglalja össze.

Szintaxis

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

Példa

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

Példa (Data Lake Storage-végpont)

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

A tárolón belüli könyvtárba való másoláshoz egyszerűen adja meg a könyvtár nevét a parancssztringben.

Példa

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

Példa (Data Lake Storage-végpont)

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

Ha egy olyan könyvtár nevét adja meg, amely nem létezik a tárolóban, az AzCopy ezzel a névvel hoz létre egy új könyvtárat.

Könyvtártartalom feltöltése

Töltse fel egy könyvtár tartalmát az azcopy copy paranccsal. A helyettesítő karakter (*) használatával anélkül töltheti fel a tartalmat, hogy magát a könyvtárat másolja.

Tipp.

Ez a példa az elérési utak argumentumait egyetlen idézőjelekkel ('') foglalja össze. A Windows command Shell (cmd.exe) kivételével minden parancshéjban használjon egyetlen idézőjelet. Ha Windows Command Shellt (cmd.exe) használ, az elérésiút-argumentumokat idézőjelek ('' ) helyett dupla idézőjelekkel ("") foglalja össze.

Szintaxis

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

Példa

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

Példa (Data Lake Storage-végpont)

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

Fűzze hozzá a jelölőt --recursive az összes alkönyvtár fájljainak feltöltéséhez.

Adott fájlok feltöltése

Bizonyos fájlokat teljes fájlnevek, helyettesítő karakterek (*) részleges nevei, illetve dátumok és időpontok használatával tölthet fel.

Tipp.

Ezek a példák az elérésiút-argumentumokat egyetlen idézőjelekkel ('') foglalja össze. A Windows command Shell (cmd.exe) kivételével minden parancshéjban használjon egyetlen idézőjelet. Ha Windows Command Shellt (cmd.exe) használ, az elérésiút-argumentumokat idézőjelek ('' ) helyett dupla idézőjelekkel ("") foglalja össze.

Több teljes fájlnév megadása

Használja az azcopy copy parancsot a --include-path beállítással. Különítse el az egyes fájlneveket pontosvesszővel (;).

Szintaxis

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

Példa

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

Példa (Data Lake Storage-végpont)

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

Ebben a példában az AzCopy átviszi a C:\myDirectory\photos könyvtárat és a C:\myDirectory\documents\myFile.txt fájlt. Adja meg a --recursive könyvtárban lévő összes fájl átvitelének C:\myDirectory\photos lehetőségét.

A lehetőséggel --exclude-path fájlokat is kizárhat. További információ: azcopy copy reference docs.

Helyettesítő karakterek használata

Használja az azcopy copy parancsot a --include-pattern beállítással. Adja meg a helyettesítő karaktereket tartalmazó részleges neveket. Különítse el a neveket szemikolin (;) használatával.

Szintaxis

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>

Példa

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

Példa (Data Lake Storage-végpont)

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

A lehetőséggel --exclude-pattern fájlokat is kizárhat. További információ: azcopy copy reference docs.

A --include-pattern beállítások csak --exclude-pattern a fájlnevekre vonatkoznak, az elérési útra nem. Ha a könyvtárfában található összes szövegfájlt át szeretné másolni, akkor a -recursive teljes könyvtárfát lekérheti, majd a -include-pattern beállítással *.txt lekérheti az összes szövegfájlt.

Dátum és idő előtt vagy után módosított fájlok feltöltése

Használja az azcopy copy parancsot a vagy --include-after a --include-before beállítással. Adjon meg egy dátumot és időt ISO-8601 formátumban (például: 2020-08-19T15:04:00Z).

Az alábbi példák a megadott dátumon vagy után módosított fájlokat töltik fel.

Szintaxis

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>

Példa

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

Példa (Data Lake Storage-végpont)

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

Részletes referencia: az azcopy copy reference docs.

Feltöltés indexcímkékkel

Feltölthet egy fájlt, és blobindexcímkéket adhat hozzá a célblobhoz.

Ha Microsoft Entra-hitelesítést használ, a biztonsági taghoz hozzá kell rendelni a Storage Blob Data Owner szerepkört, vagy engedélyt kell adni az Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/writeAzure-erőforrás-szolgáltatói műveletre egy egyéni Azure-szerepkörön keresztül. Ha SAS-jogkivonatot használ, a jogkivonatnak hozzáférést kell biztosítania a blob címkéihez az t SAS-engedélyen keresztül.

Címkék hozzáadásához használja a --blob-tags lehetőséget egy URL-kódolt kulcs-érték párral együtt. A kulcs my tag és egy érték my tag valuehozzáadásához például hozzá kell adnia --blob-tags='my%20tag=my%20tag%20value' a célparamétert.

Több indexcímke elkülönítése ampersand (&) használatával. Ha például egy kulcsot my second tag és egy értéket my second tag valueszeretne hozzáadni, a teljes beállítási sztring az lenne --blob-tags='my%20tag=my%20tag%20value&my%20second%20tag=my%20second%20tag%20value'.

Az alábbi példák bemutatják a --blob-tags beállítás használatát.

Tipp.

Ez a példa az elérési utak argumentumait egyetlen idézőjelekkel ('') foglalja össze. A Windows command Shell (cmd.exe) kivételével minden parancshéjban használjon egyetlen idézőjelet. Ha Windows Command Shellt (cmd.exe) használ, az elérésiút-argumentumokat idézőjelek ('' ) helyett dupla idézőjelekkel ("") foglalja össze.

Fájl feltöltése

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'

Könyvtár feltöltése

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'

Könyvtártartalom feltöltése

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'

Megjegyzés:

Ha megad egy könyvtárat a forráshoz, a célhelyre másolt összes blob ugyanazokat a címkéket fogja tartalmazni, amelyeket a parancsban megadott.

Feltöltés választható jelzőkkel

A feltöltési műveletet tetszés szerinti jelölőkkel módosíthatja. Íme néhány példa.

Eset Jelölő
Fájlok feltöltése hozzáfűző blobként vagy lapblobként. --blob-type=[BlockBlob|PageBlob|AppendBlob]
Feltöltés egy adott hozzáférési szintre (például az archív szintre). --block-blob-tier=[Nincs|Gyakori|Menő|Archívum]

A teljes listát a beállítások között találja.

További lépések

További példákat az alábbi cikkekben talál:

A beállítások konfigurálásához, a teljesítmény optimalizálásához és a problémák elhárításához tekintse meg ezeket a cikkeket: