Update-AzDataLakeGen2Item
Frissítsen egy fájlt vagy könyvtárat a tulajdonságokról, metaadatokról, engedélyekről, ACL-ről és tulajdonosról.
Syntax
Update-AzDataLakeGen2Item
[-FileSystem] <String>
[-Path <String>]
[-Permission <String>]
[-Owner <String>]
[-Group <String>]
[-Property <Hashtable>]
[-Metadata <Hashtable>]
[-Acl <PSPathAccessControlEntry[]>]
[-Context <IStorageContext>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Update-AzDataLakeGen2Item
-InputObject <AzureDataLakeGen2Item>
[-Permission <String>]
[-Owner <String>]
[-Group <String>]
[-Property <Hashtable>]
[-Metadata <Hashtable>]
[-Acl <PSPathAccessControlEntry[]>]
[-Context <IStorageContext>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Az Update-AzDataLakeGen2Item parancsmag frissít egy fájlt vagy könyvtárat a tulajdonságokról, metaadatokról, engedélyekről, ACL-ről és tulajdonosról. Ez a parancsmag csak akkor működik, ha a hierarchikus Namespace engedélyezve van a Storage-fiókhoz. Ez a fióktípus a "New-AzStorageAccount" parancsmag "-EnableHierarchicalNamespace $true" parancsmaggal hozható létre.
Példák
1. példa: Hozzon létre egy ACL-objektumot 3 ACL-bejegyzéssel, és frissítse az ACL-t a fájlrendszer minden elemére rekurzív módon
$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType user -Permission rwx
$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType group -Permission rw- -InputObject $acl
$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType other -Permission "rwt" -InputObject $acl
Get-AzDataLakeGen2ChildItem -FileSystem "filesystem1" -Recurse | Update-AzDataLakeGen2Item -ACL $acl
FileSystem Name: filesystem1
Path IsDirectory Length LastModified Permissions Owner Group
---- ----------- ------ ------------ ----------- ----- -----
dir1 True 2020-03-13 13:07:34Z rwxrw-rwt $superuser $superuser
dir1/file1 False 1024 2020-03-23 09:29:18Z rwxrw-rwt $superuser $superuser
dir2 True 2020-03-23 09:28:36Z rwxrw-rwt $superuser $superuser
Ez a parancs először létrehoz egy ACL-objektumot 3 acl bejegyzéssel (az -InputObject paraméterrel acl-bejegyzést hozzáadja a meglévő acl-objektumhoz), majd lekérheti a fájlrendszer összes elemét, és frissítheti az acl-et az elemeken.
2. példa: Egy fájl összes tulajdonságának frissítése és megjelenítése
$file = Update-AzDataLakeGen2Item -FileSystem "filesystem1" -Path "dir1/file1" `
-Acl $acl `
-Property @{"ContentType" = "image/jpeg"; "ContentMD5" = "i727sP7HigloQDsqadNLHw=="; "ContentEncoding" = "UDF8"; "CacheControl" = "READ"; "ContentDisposition" = "True"; "ContentLanguage" = "EN-US"} `
-Metadata @{"tag1" = "value1"; "tag2" = "value2" } `
-Permission rw-rw-rwx `
-Owner '$superuser' `
-Group '$superuser'
$file
FileSystem Name: filesystem1
Path IsDirectory Length LastModified Permissions Owner Group
---- ----------- ------ ------------ ----------- ----- -----
dir1/file1 False 1024 2020-03-23 09:57:33Z rwxrw-rw- $superuser $superuser
$file.ACL
DefaultScope AccessControlType EntityId Permissions
------------ ----------------- -------- -----------
False User rwx
False Group rw-
False Other rw-
$file.Permissions
Owner : Execute, Write, Read
Group : Write, Read
Other : Write, Read
StickyBit : False
ExtendedAcls : False
$file.Properties.Metadata
Key Value
--- -----
tag2 value2
tag1 value1
$file.Properties
LastModified : 3/23/2020 9:57:33 AM +00:00
CreatedOn : 3/23/2020 9:29:18 AM +00:00
Metadata : {[tag2, value2], [tag1, value1]}
CopyCompletedOn : 1/1/0001 12:00:00 AM +00:00
CopyStatusDescription :
CopyId :
CopyProgress :
CopySource :
CopyStatus : Pending
IsIncrementalCopy : False
LeaseDuration : Infinite
LeaseState : Available
LeaseStatus : Unlocked
ContentLength : 1024
ContentType : image/jpeg
ETag : "0x8D7CF109B9878CC"
ContentHash : {139, 189, 187, 176...}
ContentEncoding : UDF8
ContentDisposition : True
ContentLanguage : EN-US
CacheControl : READ
AcceptRanges : bytes
IsServerEncrypted : True
EncryptionKeySha256 :
AccessTier : Cool
ArchiveStatus :
AccessTierChangedOn : 1/1/0001 12:00:00 AM +00:00
Ez a parancs frissíti a fájl összes tulajdonságát (ACL, engedély, tulajdonos, csoport, metaadatok, tulajdonság bármilyen konbinációval frissíthető), és megjeleníti őket a PowerShell-konzolon.
3. példa: ACL-bejegyzés hozzáadása egy könyvtárhoz
## Get the origin ACL
$acl = (Get-AzDataLakeGen2Item -FileSystem "filesystem1" -Path 'dir1/dir3/').ACL
# Update permission of a new ACL entry (if ACL entry with same AccessControlType/EntityId/DefaultScope not exist, will add a new ACL entry, else update permission of existing ACL entry)
$acl = Set-AzDataLakeGen2ItemAclObject -AccessControlType user -EntityId $id -Permission rw- -InputObject $acl
# set the new acl to the directory
Update-AzDataLakeGen2Item -FileSystem "filesystem1" -Path 'dir1/dir3/' -ACL $acl
FileSystem Name: filesystem1
Path IsDirectory Length LastModified Permissions Owner Group
---- ----------- ------ ------------ ----------- ----- -----
dir1/dir3 True 2020-03-23 09:34:31Z rwxrw-rw-+ $superuser $superuser
Ez a parancs lekéri az ACL-t egy könyvtárból, frissíti/hozzáad egy ACL-bejegyzést, és visszalép a könyvtárba. Ha nem létezik ugyanazzal az AccessControlType/EntityId/DefaultScope objektummal rendelkező ACL-bejegyzés, új ACL-bejegyzést ad hozzá, máskülönben frissíti a meglévő ACL-bejegyzés engedélyét.
Paraméterek
-Acl
A POSIX hozzáférés-vezérlési jogosultságainak beállítása fájlokon és könyvtárakon. Hozza létre ezt az objektumot a New-AzDataLakeGen2ItemAclObject használatával.
Típus: | PSPathAccessControlEntry[] |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Confirm
Jóváhagyást kér a parancsmag futtatása előtt.
Típus: | SwitchParameter |
Aliasok: | cf |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Context
Azure Storage környezeti objektum
Típus: | IStorageContext |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | False |
-DefaultProfile
Az Azure-ral való kommunikációhoz használt hitelesítő adatok, fiók, bérlő és előfizetés.
Típus: | IAzureContextContainer |
Aliasok: | AzureRmContext, AzureCredential |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-FileSystem
Fájlrendszer neve
Típus: | String |
Position: | 0 |
Alapértelmezett érték: | None |
Kötelező: | True |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | False |
-Group
Beállítja a blob tulajdonoscsoportját.
Típus: | String |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-InputObject
Frissítendő Azure Datalake Gen2 elemobjektum
Típus: | AzureDataLakeGen2Item |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | True |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | False |
-Metadata
A könyvtár vagy fájl metaadatait adja meg.
Típus: | Hashtable |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Owner
Beállítja a blob tulajdonosát.
Típus: | String |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Path
A megadott fájlrendszer azon elérési útja, amelyet frissíteni kell. Lehet fájl vagy könyvtár "directory/file.txt" vagy "directory1/directory2/" formátumban. Ha nem adja meg ezt a paramétert, az frissíti a fájlrendszer gyökérkönyvtárát.
Típus: | String |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | False |
-Permission
POSIX-hozzáférési engedélyeket állít be a fájltulajdonos, a fájltulajdonosi csoport és mások számára. Minden osztály kaphat olvasási, írási vagy végrehajtási engedélyt. A szimbolikus (rwxrw-rw-) támogatott. A ragadós bit is támogatott, és a t vagy a T betű jelöli az utolsó karakter helyén attól függően, hogy a többi kategória végrehajtási bitje be van-e állítva, vagy nincs megadva, a t vagy a T hiánya azt jelzi, hogy nincs beállítva a ragadós bit. Az ACL-vel együtt érvénytelen.
Típus: | String |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Property
Megadja a könyvtár vagy fájl tulajdonságait. A fájl támogatott tulajdonságai a következők: CacheControl, ContentDisposition, ContentEncoding, ContentLanguage, ContentMD5, ContentType. A címtár támogatott tulajdonságai a következők: CacheControl, ContentDisposition, ContentEncoding, ContentLanguage.
Típus: | Hashtable |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-WhatIf
Bemutatja, mi történne a parancsmag futtatásakor. A parancsmag nem fut.
Típus: | SwitchParameter |
Aliasok: | wi |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |