Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk bemutatja, hogyan hozhat létre és kezelhet címtárakat és fájlokat hierarchikus névtérrel rendelkező tárfiókokban a PowerShell használatával.
A címtárak és fájlok hozzáférés-vezérlési listáinak (ACL) beszerzéséről, beállításáról és frissítéséről a PowerShell használata az Azure Data Lake Storage ACL-einek kezeléséhez című témakörben olvashat.
Hivatkozás | Gen1–Gen2-leképezés | Visszajelzés küldése
Előfeltételek
Azure-előfizetés. További információ: Ingyenes Azure-próbaidőszak lekérése.
Olyan tárfiók, amelyben a hierarchikus névtér engedélyezve van. Az alábbi utasításokat követve hozzon létre egyet.
.NET-keretrendszer 4.7.2 vagy újabb verzió van telepítve. További információ: .NET-keretrendszer letöltése.
PowerShell-verzió
5.1
vagy újabb.
A PowerShell-modul telepítése
Az alábbi paranccsal ellenőrizze, hogy a telepített PowerShell-verzió
5.1
vagy annál magasabb-e.echo $PSVersionTable.PSVersion.ToString()
A PowerShell verziójának frissítéséről további információt a meglévő Windows PowerShell frissítése című témakörben talál .
Telepítse az Az.Storage modult.
Install-Module Az.Storage -Repository PSGallery -Force
További információ a PowerShell-modulok telepítéséről: Az Azure PowerShell-modul telepítése
Csatlakozás a fiókhoz
Nyisson meg egy Windows PowerShell-parancsablakot, majd jelentkezzen be az Azure-előfizetésbe a Connect-AzAccount paranccsal, és kövesse a képernyőn megjelenő utasításokat.
Connect-AzAccount
Ha identitása egynél több előfizetéshez van társítva, és a rendszer nem kéri az előfizetés kiválasztását, állítsa be az aktív előfizetést annak a tárfióknak az előfizetésére, amelyen működni szeretne. Ebben a példában cserélje le a
<subscription-id>
helyőrző értékét az előfizetés azonosítójára.Select-AzSubscription -SubscriptionId <subscription-id>
A tárfiók környezetének lekérése.
$ctx = New-AzStorageContext -StorageAccountName '<storage-account-name>' -UseConnectedAccount
Tároló létrehozása
A tároló a fájljaid fájlrendszereként működik. Létrehozhat egyet a New-AzStorageContainer parancsmaggal.
Ez a példa létrehoz egy tárolót my-file-system
.
$filesystemName = "my-file-system"
New-AzStorageContainer -Context $ctx -Name $filesystemName
Címtár létrehozása
Hozzon létre egy címtárhivatkozást a New-AzDataLakeGen2Item parancsmag használatával.
Ez a példa egy tárolóhoz elnevezett my-directory
könyvtárat ad hozzá.
$filesystemName = "my-file-system"
$dirname = "my-directory/"
New-AzDataLakeGen2Item -Context $ctx -FileSystem $filesystemName -Path $dirname -Directory
Ez a példa ugyanazt a könyvtárat adja hozzá, de beállítja az engedélyeket, az umaszkot, a tulajdonságértékeket és a metaadat-értékeket is.
$dir = New-AzDataLakeGen2Item -Context $ctx -FileSystem $filesystemName -Path $dirname -Directory -Permission rwxrwxrwx -Umask ---rwx--- -Property @{"ContentEncoding" = "UDF8"; "CacheControl" = "READ"} -Metadata @{"tag1" = "value1"; "tag2" = "value2" }
Címtártulajdonságok megjelenítése
Ez a példa a Get-AzDataLakeGen2Item parancsmaggal szerez be egy könyvtárat, majd kinyomtatja a tulajdonságértékeket a konzolon.
$filesystemName = "my-file-system"
$dirname = "my-directory/"
$dir = Get-AzDataLakeGen2Item -Context $ctx -FileSystem $filesystemName -Path $dirname
$dir.ACL
$dir.Permissions
$dir.Group
$dir.Owner
$dir.Properties
$dir.Properties.Metadata
Megjegyzés
A tároló gyökérkönyvtárának lekéréséhez hagyja ki a -Path
paramétert.
Címtár átnevezése vagy áthelyezése
Címtár átnevezése vagy áthelyezése a Move-AzDataLakeGen2Item parancsmaggal.
Ez a példa átnevez egy könyvtárat a névről my-directory
a névre my-new-directory
.
$filesystemName = "my-file-system"
$dirname = "my-directory/"
$dirname2 = "my-new-directory/"
Move-AzDataLakeGen2Item -Context $ctx -FileSystem $filesystemName -Path $dirname -DestFileSystem $filesystemName -DestPath $dirname2
Feljegyzés
Használja a paramétert -Force
, ha kérések nélkül szeretné felülírni.
Ez a példa áthelyez egy névvel ellátott my-directory
könyvtárat a nevesített my-directory-2
alkönyvtárbamy-subdirectory
.
$filesystemName = "my-file-system"
$dirname = "my-directory/"
$dirname2 = "my-directory-2/my-subdirectory/"
Move-AzDataLakeGen2Item -Context $ctx -FileSystem $filesystemName -Path $dirname -DestFileSystem $filesystemName -DestPath $dirname2
Mappa törlése
Könyvtár törlése a Remove-AzDataLakeGen2Item parancsmaggal.
Ez a példa egy névvel ellátott my-directory
könyvtárat töröl.
$filesystemName = "my-file-system"
$dirname = "my-directory/"
Remove-AzDataLakeGen2Item -Context $ctx -FileSystem $filesystemName -Path $dirname
A paraméterrel -Force
kérés nélkül is eltávolíthatja a fájlt.
Letöltés könyvtárból
Töltsön le egy fájlt egy könyvtárból a Get-AzDataLakeGen2ItemContent parancsmag használatával.
Ez a példa egy névvel upload.txt
ellátott my-directory
könyvtárból tölt le egy fájlt.
$filesystemName = "my-file-system"
$filePath = "my-directory/upload.txt"
$downloadFilePath = "download.txt"
Get-AzDataLakeGen2ItemContent -Context $ctx -FileSystem $filesystemName -Path $filePath -Destination $downloadFilePath
Könyvtár tartalmának listázása
Listázhatja egy könyvtár tartalmát a Get-AzDataLakeGen2ChildItem parancsmaggal. Az opcionális paraméterrel -OutputUserPrincipalName
lekérheti a felhasználók nevét (az objektumazonosító helyett).
Ez a példa egy névvel ellátott könyvtár tartalmát sorolja fel my-directory
.
$filesystemName = "my-file-system"
$dirname = "my-directory/"
Get-AzDataLakeGen2ChildItem -Context $ctx -FileSystem $filesystemName -Path $dirname -OutputUserPrincipalName
Az alábbi példa felsorolja a ACL
, Permissions
, Group
és Owner
tulajdonságait a könyvtár egyes elemeinek. A -FetchProperty
paraméter a ACL
tulajdonság értékeinek lekéréséhez szükséges.
$filesystemName = "my-file-system"
$dirname = "my-directory/"
$properties = Get-AzDataLakeGen2ChildItem -Context $ctx -FileSystem $filesystemName -Path $dirname -Recurse -FetchProperty
$properties.ACL
$properties.Permissions
$properties.Group
$properties.Owner
Feljegyzés
A tároló gyökérkönyvtárának tartalmának listázásához hagyja ki a -Path
paramétert.
Fájl feltöltése könyvtárba
Töltsön fel egy fájlt egy könyvtárba a New-AzDataLakeGen2Item parancsmag használatával.
Ez a példa feltölt egy fájlt egy névvel ellátott upload.txt
my-directory
könyvtárba.
$localSrcFile = "upload.txt"
$filesystemName = "my-file-system"
$dirname = "my-directory/"
$destPath = $dirname + (Get-Item $localSrcFile).Name
New-AzDataLakeGen2Item -Context $ctx -FileSystem $filesystemName -Path $destPath -Source $localSrcFile -Force
Ez a példa feltölti ugyanazt a fájlt, majd beállítja a célfájl engedélyeit, umaszkját, tulajdonságértékeit és metaadat-értékeit. Ez a példa ezeket az értékeket a konzolra is nyomtatja.
$file = New-AzDataLakeGen2Item -Context $ctx -FileSystem $filesystemName -Path $destPath -Source $localSrcFile -Permission rwxrwxrwx -Umask ---rwx--- -Property @{"ContentEncoding" = "UDF8"; "CacheControl" = "READ"} -Metadata @{"tag1" = "value1"; "tag2" = "value2" }
$file1
$file1.Properties
$file1.Properties.Metadata
Feljegyzés
Ha fel szeretne tölteni egy fájlt a tároló gyökérkönyvtárába, hagyja ki a paramétert -Path
.
Fájltulajdonságok megjelenítése
Ez a példa beolvas egy fájlt a Get-AzDataLakeGen2Item parancsmaggal, majd kinyomtatja a tulajdonságértékeket a konzolon.
$filepath = "my-directory/upload.txt"
$filesystemName = "my-file-system"
$file = Get-AzDataLakeGen2Item -Context $ctx -FileSystem $filesystemName -Path $filepath
$file
$file.ACL
$file.Permissions
$file.Group
$file.Owner
$file.Properties
$file.Properties.Metadata
Fájl törlése
Fájl törlése a Remove-AzDataLakeGen2Item parancsmaggal.
Ez a példa töröl egy nevű fájlt upload.txt
.
$filesystemName = "my-file-system"
$filepath = "upload.txt"
Remove-AzDataLakeGen2Item -Context $ctx -FileSystem $filesystemName -Path $filepath
A paraméterrel -Force
kérés nélkül is eltávolíthatja a fájlt.
Gen1–Gen2 leképezés
Az alábbi táblázat bemutatja, hogy a Data Lake Storage Gen1-ben használt parancsmagok hogyan képezik le a Data Lake Storage parancsmagjait.
Feljegyzés
Az Azure Data Lake Storage Gen1 mostanra megszűnt. A nyugdíjazási bejelentést itt találja. A Data Lake Storage Gen1-erőforrások már nem érhetők el. Ha különleges segítségre van szüksége, forduljon hozzánk.
Data Lake Storage Gen1 parancsmodul | Data Lake Storage parancs | Jegyzetek |
---|---|---|
Get-AzDataLakeStoreChildItem | Get-AzDataLakeGen2ChildItem | Alapértelmezés szerint a Get-AzDataLakeGen2ChildItem parancsmag csak az első szintű gyermekelemeket listázza. A -Recurse paraméter rekurzív módon listázza a gyermekelemeket. |
Get-AzDataLakeStoreItem Get-AzDataLakeStoreItemAclEntry Get-AzDataLakeStoreItemOwner Get-AzDataLakeStoreItemPermission |
Get-AzDataLakeGen2Item | A Get-AzDataLakeGen2Item parancsmag kimeneti elemei a következő tulajdonságokkal rendelkeznek: Acl, Tulajdonos, Csoport, Engedély. |
Get-AzDataLakeStoreItemContent | Get-AzDataLakeGen2FileContent | A Get-AzDataLakeGen2FileContent parancsmag letölti a fájl tartalmát a helyi fájlba. |
Move-AzDataLakeStoreItem | Move-AzDataLakeGen2Item | |
New-AzDataLakeStoreItem | New-AzDataLakeGen2Item | Ez a parancsmag feltölti az új fájltartalmat egy helyi fájlból. |
Remove-AzDataLakeStoreItem | Remove-AzDataLakeGen2Item | |
Set-AzDataLakeStoreItemOwner Set-AzDataLakeStoreItemPermission Set-AzDataLakeStoreItemAcl |
Update-AzDataLakeGen2Item | Az Update-AzDataLakeGen2Item parancsmag csak egyetlen elemet frissít, rekurzív módon nem. Ha rekurzív módon szeretne frissíteni, listázzon elemeket a Get-AzDataLakeStoreChildItem parancsmaggal, majd folytassa a folyamatot az Update-AzDataLakeGen2Item parancsmaggal. |
Test-AzDataLakeStoreItem | Get-AzDataLakeGen2Item | A Get-AzDataLakeGen2Item parancsmag hibát jelez, ha az elem nem létezik. |