New-ItemProperty

항목에 대한 새 속성을 만들고 해당 값을 설정합니다.

Syntax

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>]

Description

cmdlet은 New-ItemProperty 지정된 항목에 대한 새 속성을 만들고 해당 값을 설정합니다. 일반적으로 이 cmdlet은 레지스트리 값이 레지스트리 키 항목의 속성이므로 새 레지스트리 값을 만드는 데 사용됩니다.

이 cmdlet은 개체에 속성을 추가하지는 않습니다.

  • 개체 인스턴스에 속성을 추가하려면 cmdlet을 Add-Member 사용합니다.
  • 특정 형식의 모든 개체에 속성을 추가하려면 Types.ps1xml 파일을 수정합니다.

예제

예제 1: 레지스트리 항목 추가

이 명령은 새 레지스트리 항목을 NoOfEmployees키에 MyCompanyHKLM:\Software hive추가합니다.

첫 번째 명령은 Path 매개 변수를 사용하여 레지스트리 키의 MyCompany 경로를 지정합니다. Name 매개 변수를 사용하여 항목의 이름을 지정하고 Value 매개 변수를 사용하여 해당 값을 지정합니다.

두 번째 명령은 cmdlet을 Get-ItemProperty 사용하여 새 레지스트리 항목을 확인합니다.

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

예제 2: 키에 레지스트리 항목 추가

이 명령은 새 레지스트리 항목을 레지스트리 키에 추가합니다. 키를 지정하려면 파이프라인 연산자(|)를 사용하여 키를 New-ItemProperty나타내는 개체를 보냅니다.

명령의 첫 번째 부분에서는 cmdlet을 Get-Item 사용하여 레지스트리 키를 가져옵니다 MyCompany . 파이프라인 연산자는 새 레지스트리 항목() 및 해당 값3(NoOfLocations)을 키에 MyCompany 추가하는 명령New-ItemProperty의 결과를 보냅니다.

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

이 명령은 PowerShell의 매개 변수 바인딩 기능이 반환되는 RegistryKey 개체의 경로를 LiteralPath 매개 New-ItemProperty변수와 연결하기 때문에 작동합니다.Get-Item 자세한 내용은 about_Pipelines 참조하세요.

예제 3: Here-String을 사용하여 레지스트리에 MultiString 값 만들기

이 예제에서는 MultiString 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

예제 4: 배열을 사용하여 레지스트리에 MultiString 값 만들기

이 예제에서는 값 배열을 사용하여 값을 만드는 MultiString 방법을 보여줍니다.

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

a

매개 변수

-Confirm

cmdlet을 실행하기 전에 확인 메시지가 표시됩니다.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

이 작업을 수행할 권한이 있는 사용자 계정을 지정합니다. 기본값은 현재 사용자입니다.

사용자 이름(예: User01 cmdlet에서 생성된 개체)을 입력하거나 Domain01\User01PSCredential 개체를 Get-Credential 입력합니다. 사용자 이름을 입력하면 암호를 입력하라는 메시지가 표시됩니다.

참고 항목

이 매개 변수는 PowerShell과 함께 설치된 공급자에서 지원되지 않습니다. 다른 사용자를 가장하거나 이 cmdlet을 실행할 때 자격 증명을 높이려면 Invoke-Command를 사용합니다.

Type:PSCredential
Position:Named
Default value:Current user
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Exclude

문자열 배열로 이 cmdlet이 작업에서 제외하는 항목 또는 항목을 지정합니다. 이 매개 변수의 값은 Path 매개 변수를 한정합니다. 경로 요소 또는 패턴(예: *.txt.)을 입력합니다. 와일드카드 문자를 사용할 수 있습니다. Exclude 매개 변수는 명령에 항목의 내용(예: C:\Windows\*wild카드 문자가 디렉터리의 내용을 지정하는 경우에만 유효합니다C:\Windows.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Filter

Path 매개 변수를 한정할 필터를 지정합니다. FileSystem 공급자는 필터 사용을 지원하는 유일한 설치된 PowerShell 공급자입니다. FileSystem 필터 언어에 대한 구문은 about_Wild카드 찾을 수 있습니다. 필터는 검색된 후 PowerShell이 개체를 필터링하지 않고 cmdlet이 개체를 가져올 때 공급자가 적용하기 때문에 다른 매개 변수보다 더 효율적입니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Force

사용자가 액세스할 수 없는 개체에 속성을 만들도록 cmdlet을 강제로 적용합니다. 구현은 공급자마다 다릅니다. 자세한 내용은 about_Providers 참조하세요.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Include

문자열 배열로 이 cmdlet이 작업에 포함하는 항목 또는 항목을 지정합니다. 이 매개 변수의 값은 Path 매개 변수를 한정합니다. 경로 요소 또는 패턴(예: *.txt.)을 입력합니다. 와일드카드 문자를 사용할 수 있습니다. Include 매개 변수는 명령에 항목의 내용(예: C:\Windows\*wild카드 문자가 디렉터리의 내용을 지정하는 경우에만 유효합니다C:\Windows.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-LiteralPath

하나 이상의 위치에 대한 경로를 지정합니다. LiteralPath값은 입력된 대로 정확하게 사용됩니다. 어떤 문자도 야생으로 해석되지 카드. 경로에 이스케이프 문자가 포함된 경우 작은따옴표(')로 묶습니다. 작은따옴표는 PowerShell에 문자를 이스케이프 시퀀스로 해석하지 않도록 지시합니다.

자세한 내용은 about_Quoting_Rules 참조하세요.

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

새 속성의 이름을 지정합니다. 속성이 레지스트리 항목인 경우 이 매개 변수는 항목의 이름을 지정합니다.

Type:String
Aliases:PSProperty
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Path

항목의 경로를 지정합니다. 와일드카드 문자를 사용할 수 있습니다. 이 매개 변수는 이 cmdlet이 새 속성을 추가하는 항목을 식별합니다.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:True

-PropertyType

이 cmdlet이 추가하는 속성의 형식을 지정합니다. 이 매개 변수에 허용되는 값은 다음과 같습니다.

  • String: null로 끝나는 문자열을 지정합니다. REG_SZ 값에 사용됩니다.
  • ExpandString: 값을 검색할 때 확장되는 환경 변수에 대한 확장되지 않은 참조를 포함하는 null로 끝나는 문자열을 지정합니다. REG_EXPAND_SZ 값에 사용됩니다.
  • Binary: 모든 형식의 이진 데이터를 지정합니다. REG_BINARY 값에 사용됩니다.
  • DWord: 32비트 이진 번호를 지정합니다. REG_DWORD 값에 사용됩니다.
  • MultiString: 두 개의 null 문자로 종료되는 null로 끝나는 문자열의 배열을 지정합니다. REG_MULTI_SZ 값에 사용됩니다.
  • Qword: 64비트 이진 번호를 지정합니다. REG_QWORD 값에 사용됩니다.
  • Unknown: REG_RESOURCE_LIST 값과 같이 지원되지 않는 레지스트리 데이터 형식을 나타냅니다.
Type:String
Aliases:Type
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Value

속성 값을 지정합니다. 속성이 레지스트리 항목인 경우 이 매개 변수는 항목의 값을 지정합니다.

Type:Object
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

cmdlet이 실행될 경우 결과 동작을 표시합니다. cmdlet이 실행되지 않습니다.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

입력

None

개체를 이 cmdlet으로 파이프할 수 없습니다.

출력

PSCustomObject

이 cmdlet은 새 속성을 나타내는 사용자 지정 개체를 반환합니다.

참고

New-ItemProperty 는 모든 공급자가 노출하는 데이터와 함께 작동하도록 설계되었습니다. 세션에서 사용할 수 있는 공급자를 나열하려면 .를 입력 Get-PSProvider합니다. 자세한 내용은 about_Providers 참조하세요.