Set-ItemProperty
Tworzy lub zmienia wartość właściwości elementu.
Składnia
Set-ItemProperty
[-Path] <String[]>
[-Name] <String>
[-Value] <Object>
[-PassThru]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
Set-ItemProperty
[-Path] <String[]>
-InputObject <PSObject>
[-PassThru]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
Set-ItemProperty
-LiteralPath <String[]>
[-Name] <String>
[-Value] <Object>
[-PassThru]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
Set-ItemProperty
-LiteralPath <String[]>
-InputObject <PSObject>
[-PassThru]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-Type <RegistryValueKind>]
[<CommonParameters>]
Opis
Polecenie Set-ItemProperty
cmdlet zmienia wartość właściwości określonego elementu.
Możesz użyć polecenia cmdlet , aby ustanowić lub zmienić właściwości elementów.
Na przykład można użyć Set-ItemProperty
polecenia , aby ustawić wartość właściwości IsReadOnly obiektu pliku na $True
.
Służy również Set-ItemProperty
do tworzenia i zmieniania wartości rejestru i danych.
Możesz na przykład dodać nowy wpis rejestru do klucza i ustanowić lub zmienić jego wartość.
Przykłady
Przykład 1. Ustawianie właściwości pliku
To polecenie ustawia wartość właściwości IsReadOnly pliku "final.doc" na "true". Używa ścieżki do określenia pliku, Nazwa, aby określić nazwę właściwości, oraz parametr Value w celu określenia nowej wartości.
Plik jest obiektem System.IO.FileInfo i IsReadOnly jest tylko jedną z jego właściwości.
Aby wyświetlić wszystkie właściwości, wpisz Get-Item C:\GroupFiles\final.doc | Get-Member -MemberType Property
.
Zmienna automatyczna $true
reprezentuje wartość "TRUE". Aby uzyskać więcej informacji, zobacz about_Automatic_Variables.
Set-ItemProperty -Path C:\GroupFiles\final.doc -Name IsReadOnly -Value $true
Przykład 2: Twórca wpis i wartość rejestru
W tym przykładzie pokazano, jak utworzyć Set-ItemProperty
nowy wpis rejestru i przypisać wartość do wpisu. Tworzy wpis "NoOfEmployees" w kluczu "ContosoCompany" w HKLM\Software
kluczu i ustawia jego wartość na 823.
Ponieważ wpisy rejestru są uważane za właściwości kluczy rejestru, które są elementami, służy Set-ItemProperty
do tworzenia wpisów rejestru oraz do ustanawiania i zmieniania ich wartości.
Set-ItemProperty -Path "HKLM:\Software\ContosoCompany" -Name "NoOfEmployees" -Value 823
Get-ItemProperty -Path "HKLM:\Software\ContosoCompany"
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\contosocompany
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software
PSChildName : contosocompany
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
NoOfLocations : 2
NoOfEmployees : 823
Set-ItemProperty -Path "HKLM:\Software\ContosoCompany" -Name "NoOfEmployees" -Value 824
Get-ItemProperty -Path "HKLM:\Software\ContosoCompany"
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\contosocompany
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software
PSChildName : contosocompany
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
NoOfLocations : 2
NoOfEmployees : 824
Pierwsze polecenie tworzy wpis rejestru.
Używa ścieżki do określenia ścieżki HKLM:
dysku i Software\MyCompany
klucza.
Polecenie używa nazwy , aby określić nazwę wpisu i wartość , aby określić wartość.
Drugie polecenie używa Get-ItemProperty
polecenia cmdlet do wyświetlenia nowego wpisu rejestru.
Jeśli używasz Get-Item
poleceń cmdlet lub Get-ChildItem
, wpisy nie są wyświetlane, ponieważ są właściwościami klucza, a nie elementów podrzędnych ani elementów podrzędnych.
Trzecie polecenie zmienia wartość wpisu NoOfEmployees na 824.
Możesz również użyć New-ItemProperty
polecenia cmdlet , aby utworzyć wpis rejestru i jego wartość, a następnie użyć Set-ItemProperty
polecenia , aby zmienić wartość.
Aby uzyskać więcej informacji na temat HKLM:
dysku, wpisz Get-Help Get-PSDrive
.
Aby uzyskać więcej informacji na temat sposobu zarządzania rejestrem za pomocą programu PowerShell, wpisz Get-Help Registry
.
Przykład 3. Modyfikowanie elementu przy użyciu potoku
W tym przykładzie weekly.txt
użyto Get-ChildItem
polecenia do pobrania pliku. Obiekt pliku jest potokowany do Set-ItemProperty
obiektu . Polecenie Set-ItemProperty
używa parametrów Nazwa i Wartość , aby określić właściwość i jej nową wartość.
Get-ChildItem weekly.txt | Set-ItemProperty -Name IsReadOnly -Value $True
Parametry
-Confirm
Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Uwaga
Ten parametr nie jest obsługiwany przez żadnych dostawców zainstalowanych w programie PowerShell. Aby personifikować innego użytkownika lub podnieść poziom poświadczeń podczas uruchamiania tego polecenia cmdlet, użyj polecenia Invoke-Command.
Type: | PSCredential |
Position: | Named |
Default value: | Current user |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Exclude
Określa jako tablicę ciągów element lub elementy, które to polecenie cmdlet wyklucza w operacji. Wartość tego parametru kwalifikuje parametr Path . Wprowadź element ścieżki lub wzorzec, taki jak *.txt
. Dozwolone są symbole wieloznaczne. Parametr Exclude jest skuteczny tylko wtedy, gdy polecenie zawiera zawartość elementu, na przykład C:\Windows\*
, gdzie symbol wieloznaczny określa zawartość C:\Windows
katalogu.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Filter
Określa filtr w celu zakwalifikowania parametru Ścieżka . Dostawca systemu plików jest jedynym zainstalowanym dostawcą programu PowerShell, który obsługuje korzystanie z filtrów. Składnię języka filtru Systemu plików można znaleźć w about_Wildcards. Filtry są bardziej wydajne niż inne parametry, ponieważ dostawca stosuje je, gdy polecenie cmdlet pobiera obiekty, zamiast filtrować obiekty programu PowerShell po ich pobraniu.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Force
Wymusza ustawienie właściwości dla elementów, do których nie można uzyskać dostępu przez użytkownika. Implementacja różni się od dostawcy do dostawcy. Aby uzyskać więcej informacji, zobacz about_Providers.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Include
Określa jako tablicę ciągów element lub elementy, które to polecenie cmdlet zawiera w operacji. Wartość tego parametru kwalifikuje parametr Path . Wprowadź element ścieżki lub wzorzec, taki jak "*.txt"
. Dozwolone są symbole wieloznaczne. Parametr Include jest skuteczny tylko wtedy, gdy polecenie zawiera zawartość elementu, na przykład C:\Windows\*
, gdzie symbol wieloznaczny określa zawartość C:\Windows
katalogu.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-InputObject
Określa obiekt, który ma właściwości, które zmienia to polecenie cmdlet. Wprowadź zmienną zawierającą obiekt lub polecenie, które pobiera obiekt.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-LiteralPath
Określa ścieżkę do co najmniej jednej lokalizacji. Wartość LiterałuPath jest używana dokładnie tak, jak jest typowana. Znaki nie są interpretowane jako symbole wieloznaczne. Jeśli ścieżka zawiera znaki ucieczki, należy je ująć w pojedynczy cudzysłów. Znaki pojedynczego cudzysłowu informują program PowerShell, aby nie interpretował żadnych znaków jako sekwencji ucieczki.
Aby uzyskać więcej informacji, zobacz about_Quoting_Rules.
Type: | String[] |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
Określa nazwę właściwości.
Type: | String |
Aliases: | PSProperty |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-PassThru
Zwraca obiekt reprezentujący właściwość elementu. Domyślnie to polecenie cmdlet nie generuje żadnego wyniku.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Określa ścieżkę elementów z właściwością do zmodyfikowania. Dozwolone są symbole wieloznaczne.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Type
Typ jest parametrem dynamicznym, który dostawca rejestru dodaje do Set-ItemProperty
polecenia cmdlet.
Ten parametr działa tylko na dyskach rejestru.
Określa typ właściwości, którą dodaje to polecenie cmdlet. Dopuszczalne wartości dla tego parametru to:
String
: określa ciąg zakończony o wartości null. Służy do REG_SZ wartości.ExpandString
: Określa ciąg zakończony o wartości null, który zawiera niezbiętne odwołania do zmiennych środowiskowych, które są rozwinięte po pobraniu wartości. Służy do REG_EXPAND_SZ wartości.Binary
: określa dane binarne w dowolnej formie. Służy do REG_BINARY wartości.DWord
: określa 32-bitową liczbę binarną. Służy do REG_DWORD wartości.MultiString
: Określa tablicę ciągów zakończonych wartością null zakończonych dwoma znakami null. Służy do REG_MULTI_SZ wartości.Qword
: Określa 64-bitową liczbę binarną. Służy do REG_QWORD wartości.Unknown
: wskazuje nieobsługiwany typ danych rejestru, taki jak REG_RESOURCE_LIST wartości.
Type: | RegistryValueKind |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Value
Określa wartość właściwości.
Type: | Object |
Position: | 2 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Pokazuje, co się stanie po uruchomieniu polecenia cmdlet. Polecenie cmdlet nie zostało uruchomione.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Dane wejściowe
Obiekty można potokować do tego polecenia cmdlet.
Dane wyjściowe
None, System.Management.Automation.PSCustomObject
To polecenie cmdlet generuje obiekt PSCustomObject , który reprezentuje element, który został zmieniony i jego nową wartość właściwości, jeśli określisz parametr PassThru . W przeciwnym razie to polecenie cmdlet nie generuje żadnych danych wyjściowych.
Uwagi
Set-ItemProperty
jest przeznaczony do pracy z danymi udostępnianymi przez dowolnego dostawcę. Aby wyświetlić listę dostawców dostępnych w sesji, wpisz Get-PSProvider
. Aby uzyskać więcej informacji, zobacz about_Providers.