Udostępnij za pośrednictwem


New-ItemProperty

Tworzy nową właściwość dla elementu i ustawia jego wartość.

Składnia

New-ItemProperty
   [-Path] <String[]>
   [-Name] <String>
   [-PropertyType <String>]
   [-Value <Object>]
   [-Force]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-ItemProperty
   -LiteralPath <String[]>
   [-Name] <String>
   [-PropertyType <String>]
   [-Value <Object>]
   [-Force]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Opis

Polecenie New-ItemProperty cmdlet tworzy nową właściwość dla określonego elementu i ustawia jego wartość. Zazwyczaj to polecenie cmdlet służy do tworzenia nowych wartości rejestru, ponieważ wartości rejestru są właściwościami elementu klucza rejestru.

To polecenie cmdlet nie dodaje właściwości do obiektu.

  • Aby dodać właściwość do wystąpienia obiektu, użyj Add-Member polecenia cmdlet .
  • Aby dodać właściwość do wszystkich obiektów określonego typu, zmodyfikuj plik Types.ps1xml.

Przykłady

Przykład 1. Dodawanie wpisu rejestru

To polecenie dodaje nowy wpis rejestru , NoOfEmployeesdo MyCompany klucza HKLM:\Software hive.

Pierwsze polecenie używa parametru Path , aby określić ścieżkę MyCompany klucza rejestru. Używa parametru Name , aby określić nazwę wpisu i parametr Value , aby określić jego wartość.

Drugie polecenie używa Get-ItemProperty polecenia cmdlet , aby wyświetlić nowy wpis rejestru.

New-ItemProperty -Path "HKLM:\Software\MyCompany" -Name "NoOfEmployees" -Value 822
Get-ItemProperty "HKLM:\Software\MyCompany"

PSPath        : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\mycompany
PSParentPath  : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software
PSChildName   : mycompany
PSDrive       : HKLM
PSProvider    : Microsoft.PowerShell.Core\Registry
NoOfLocations : 2
NoOfEmployees : 822

Przykład 2. Dodawanie wpisu rejestru do klucza

To polecenie dodaje nowy wpis rejestru do klucza rejestru. Aby określić klucz, używa operatora potoku (|) do wysyłania obiektu reprezentującego klucz do New-ItemPropertyelementu .

Pierwsza część polecenia używa Get-Item polecenia cmdlet do pobrania MyCompany klucza rejestru. Operator potoku wysyła wyniki polecenia do New-ItemProperty, które dodaje nowy wpis rejestru (NoOfLocations) i jego wartość (3) do MyCompany klucza.

Get-Item -Path "HKLM:\Software\MyCompany" | New-ItemProperty -Name NoOfLocations -Value 3

To polecenie działa, ponieważ funkcja powiązania parametrów programu PowerShell kojarzy ścieżkę obiektu RegistryKey , który Get-Item zwraca z parametrem LiteralPath polecenia New-ItemProperty. Aby uzyskać więcej informacji, zobacz about_Pipelines.

Przykład 3. Tworzenie wartości MultiString w rejestrze przy użyciu ciągu here-string

W tym przykładzie jest tworzona MultiString wartość przy użyciu metody Here-String.

$newValue = New-ItemProperty -Path "HKLM:\SOFTWARE\ContosoCompany\" -Name 'HereString' -PropertyType MultiString -Value @"
This is text which contains newlines
It can also contain "quoted" strings
"@
$newValue.multistring

This is text which contains newlines
It can also contain "quoted" strings

Przykład 4. Tworzenie wartości MultiString w rejestrze przy użyciu tablicy

W przykładzie pokazano, jak utworzyć MultiString wartość za pomocą tablicy wartości.

$newValue = New-ItemProperty -Path "HKLM:\SOFTWARE\ContosoCompany\" -Name 'MultiString' -PropertyType MultiString -Value ('a','b','c')
$newValue.multistring[0]

a

Parametry

-Confirm

Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.

Typ:SwitchParameter
Aliasy:cf
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Credential

Określa konto użytkownika, które ma uprawnienia do wykonania tej akcji. Wartość domyślna to użytkownik bieżący.

Wpisz nazwę użytkownika, taką jak User01 lub Domain01\User01, lub wprowadź obiekt PSCredential , taki jak jeden wygenerowany przez Get-Credential polecenie cmdlet. Jeśli wpiszesz nazwę użytkownika, zostanie wyświetlony monit o podanie hasła.

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.

Typ:PSCredential
Position:Named
Domyślna wartość:Current user
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych: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.

Typ:String[]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:True

-Filter

Określa filtr, aby zakwalifikować parametr Ś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ą wydajniejsze niż inne parametry, ponieważ dostawca stosuje je, gdy polecenie cmdlet pobiera obiekty zamiast filtrować obiekty po ich pobraniu.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:True

-Force

Wymusza utworzenie właściwości na obiekcie, do którego użytkownik nie może uzyskać dostępu. Implementacja różni się od dostawcy do dostawcy. Aby uzyskać więcej informacji, zobacz about_Providers.

Typ:SwitchParameter
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych: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.

Typ:String[]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:True

-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 ująć ją w znaki pojedynczego cudzysłowu ('). Pojedyncze znaki cudzysłowu informują program PowerShell, aby nie interpretował żadnych znaków jako sekwencji ucieczki.

Aby uzyskać więcej informacji, zobacz about_Quoting_Rules.

Typ:String[]
Aliasy:PSPath, LP
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Name

Określa nazwę nowej właściwości. Jeśli właściwość jest wpisem rejestru, ten parametr określa nazwę wpisu.

Typ:String
Aliasy:PSProperty
Position:1
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Path

Określa ścieżkę elementu. Dozwolone są symbole wieloznaczne. Ten parametr identyfikuje element, do którego to polecenie cmdlet dodaje nową właściwość.

Typ:String[]
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:True

-PropertyType

Określa typ właściwości, którą dodaje to polecenie cmdlet. Dopuszczalne wartości 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 wartości null, który zawiera niezrozsypane 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 wartości REG_RESOURCE_LIST .
Typ:String
Aliasy:Type
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Value

Określa wartość właściwości. Jeśli właściwość jest wpisem rejestru, ten parametr określa wartość wpisu.

Typ:Object
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-WhatIf

Pokazuje, co się stanie po uruchomieniu polecenia cmdlet. Polecenie cmdlet nie zostało uruchomione.

Typ:SwitchParameter
Aliasy:wi
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

None

Nie można potokować obiektów do tego polecenia cmdlet.

Dane wyjściowe

PSCustomObject

To polecenie cmdlet zwraca obiekt niestandardowy reprezentujący nową właściwość.

Uwagi

New-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.