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 cmdlet New-ItemProperty 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 polecenia cmdlet Add-Member.
  • 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 klucza MyCompanyHKLM:\Software hive.

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

Drugie polecenie używa polecenia cmdlet Get-ItemProperty, 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-ItemProperty.

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

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 jest zwracany z parametrem LiteralPathNew-ItemProperty. Aby uzyskać więcej informacji, zobacz about_Pipelines.

Przykład 3. Tworzenie wartości MultiString w rejestrze przy użyciu Here-String

W tym przykładzie zostanie utworzona wartość MultiString przy użyciu ciągu 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ć wartość MultiString 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 bieżący użytkownik.

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

Nuta

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 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ść katalogu C:\Windows.

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żki . Dostawca systemu plików jest jedynym zainstalowanym dostawcą programu PowerShell obsługującym 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ść katalogu C:\Windows.

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ść LiteralPath 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 pojedynczy cudzysłów ('). 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 wartością null. Służy do REG_SZ wartości.
  • ExpandString: określa ciąg zakończony wartości null, który zawiera nierozciągniętych odwołań 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ściami 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.
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, jeśli polecenie cmdlet zostanie uruchomione. Polecenie cmdlet nie jest uruchamiane.

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 przekazać danych wejściowych potoku do tego polecenia cmdlet.

Dane wyjściowe

PSCustomObject

New-ItemProperty zwraca obiekt niestandardowy zawierający nową właściwość.

Uwagi

New-ItemProperty jest przeznaczona 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.