Registry Provider
Registry
HKLM:, HKCU:
Windows PowerShell의 시스템 레지스트리 키 및 값에 대한 액세스를 제공합니다.
Windows PowerShell 레지스트리 공급자를 통해 Windows PowerShell에서 레지스트리 키 및 값을 가져오고 추가, 변경 및 삭제할 수 있습니다.
레지스트리 키는 Microsoft.Win32.RegistryKey 클래스의 인스턴스로 표시되고, 레지스트리 값은 PSCustomObject 클래스의 인스턴스로 표시됩니다.
레지스트리 공급자를 통해 레지스트리 키 및 하위 키로 구성된 계층적 네임스페이스에 액세스할 수 있습니다. 레지스트리 값 및 데이터는 이러한 계층 구조의 구성 요소가 아니라 각 키의 속성입니다.
레지스트리 공급자는 Get-Item, Copy-Item 및 Rename Item과 같은 명사 Item이 포함된 cmdlet(Item cmdlet)을 모두 지원합니다. Item cmdlet은 레지스트리 키 및 하위 키에서 작업할 때 사용합니다. 레지스트리 공급자는 명사 ItemProperty가 포함된 cmdlet(ItemProperty cmdlet)도 지원합니다. ItemProperty cmdlet은 레지스트리 값 및 데이터에서 작업할 때 사용합니다. 명사 Content가 포함된 cmdlet(Content cmdlet)은 레지스트리 공급자와 함께 사용할 수 없습니다.
각 레지스트리 키는 보안 설명자에 의해 보호됩니다. Get-Acl을 사용하여 키의 보안 설명자를 볼 수 있습니다.
ShouldProcess
이 명령은 현재 위치를 HKEY_LOCAL_MACHINE\Software 레지스트리 키로 설정합니다.
set-location hklm:\software
이 명령은 현재 위치를 표시합니다.
get-location
이 명령은 HKEY_LOCAL_MACHINE\Software 레지스트리 키의 바로 아래에 있는 각 하위 키에 대한 정보를 표시합니다.
get-childitem -path hklm:\software
이 명령은 HKCU:\Environment 하위 키 아래에 TestNew 하위 키를 만듭니다.
new-item -path hkcu:\Environment\TestNew
이 명령은 HKEY_CURRENT_USER\Environment 키의 TestNew 하위 키를 제거합니다.
remove-item -path hkcu:\Environment\TestNew
이 명령은 TestNew 키를 TestCopy 하위 키에 복사합니다.
copy-item -path hkcu:\Environment\TestNew hkcu:\Environment\TestNew\TestCopy
이 명령은 HKEY_LOCAL_MACHINE\Software 레지스트리 키의 모든 하위 키에 대한 정보를 표시합니다.
get-childitem -path hklm:\Software -recurse
이 명령은 HKEY_CURRENT_USER\Environment\testnewcopy 레지스트리 키 및 해당 속성과 모든 하위 키 및 해당 속성을 HKEY_CURRENT_USER\Environment\testnew로 이동합니다.
move-item -path hkcu:\environment\testnewcopy `
-destination hkcu:\environment\testnew
이 명령은 HKEY_CURRENT_USER\Environment\testnew 레지스트리 키의 이름을 HKEY_CURRENT_USER\Environment\test로 바꿉니다.
rename-item -path hkcu:\environment\testnew\ -newname test
이 명령은 지정된 레지스트리 항목에 대한 보안 설명자를 표시합니다.
get-acl -path hkcu:\environment\testnew | format-list -property *
이 명령은 HKEY_CURRENT_USER\Environment 레지스트리 키의 각 레지스트리 항목에 대한 값 이름과 값 데이터를 표시합니다.
get-itemproperty -path hkcu:\Environment
Default 레지스트리 항목은 값이 있는 경우에만 반환됩니다.
이 명령은 HKEY_CURRENT_USER\Environment 레지스트리 키의 Temp 레지스트리 항목에 대한 값 이름과 값 데이터를 표시합니다.
get-itemproperty -path hkcu:\Environment -name Temp
이 명령은 HKEY_CURRENT_USER 키에 pstest 레지스트리 항목을 만들고 값을 pstestvalue로 설정합니다.
new-itemproperty -path hkcu:\environment -name "pstest" -value "pstestvalue"
이 명령은 HKEY_CURRENT_USER\Environment 키의 pstest 레지스트리 항목의 값을 updatedvalue로 업데이트합니다.
set-itemproperty -path hkcu:\environment -name pstest
-value "updatedvalue"
이 명령은 HKEY_CURRENT_USER\Environment 키의 pstest 레지스트리 항목의 값 이름을 pstestnew로 바꿉니다.
rename-itemproperty -path hkcu:\environment -name pstest `
-newname pstestnew
이 명령은 HKEY_CURRENT_USER\Environment 키의 pstestnew 레지스트리 항목을 HKEY_CURRENT_USER\Environment\testnewcopy 키에 복사합니다.
copy-itemproperty -path hkcu:\environment `
-destination hkcu:\environment\testnewcopy -name pstestnew
이 명령은 HKEY_CURRENT_USER\environment\testnewcopy 키의 pstestnew 레지스트리 항목을 HKEY_CURRENT_USER\environment\testnew 키로 이동합니다.
move-itemproperty -path hkcu:\environment\testnewcopy '
-destination hkcu:\environment\testnew -name pstestnew
이 명령은 HKEY_CURRENT_USER\Environment\testnew 키에서 pstestnew 레지스트리 항목의 값을 지웁니다.
clear-itemproperty -path hkcu:\environment\testnew -name pstestnew
Clear-Item cmdlet을 사용하여 하위 키의 기본 레지스트리 항목 값을 지울 수 있습니다. 예를 들어 다음 명령은 HKEY_CURRENT_USER\Environment\testnew 레지스트리 키의 기본 항목 값을 지웁니다. clear-item -path hkcu:\environment\testnew
이 명령은 HKEY_CURRENT_USER\Environment\testnew 레지스트리 키에서 pstestnew 레지스트리 항목을 제거합니다.
remove-itemproperty -path hkcu:\environment\testnew `
-name pstestnew
이 명령은 HKEY_CURRENT_USER\Environment\testnew 키의 기본 레지스트리 항목 값을 "default value"로 업데이트합니다.
set-itemproperty -path hkcu:\environment\testnew `
-name "(default)" -value "default value"
Set-Item cmdlet을 사용하여 레지스트리 키의 기본값을 업데이트할 수도 있습니다. 예를 들어 다음 명령은 testnew 키의 기본값을 업데이트합니다. set-item -path hkcu:\environment\testnew -value "another default value"
동적 매개 변수는 Windows PowerShell 공급자가 추가하고 이 공급자가 사용할 수 있는 드라이브에서 cmdlet을 사용하는 경우에만 사용할 수 있는 cmdlet 매개 변수입니다.
레지스트리에 값을 저장할 때 사용할 데이터 형식을 지정하거나 레지스트리에 있는 값의 데이터 형식을 식별합니다.
Value | Description |
---|---|
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와 같은 지원되지 않는 레지스트리 데이터 형식을 나타냅니다. |