- 06/05/2017
- 5 분을 읽
-
- j
- k
- m
- b
기 때문에 레지스트리의 항목이의 특성을 열쇠와 이와 같을 수 없습을 직접 찾아,우리가야 약간 다른 접근 방식을 그들과 함께 작업하는 경우.
레지스트리 항목 나열
레지스트리 항목을 검사하는 여러 가지 방법이 있습니다. 가장 간단한 방법은 적절한 것을 얻는 것입니다.키와 관련된 이름. 예를 들어,이름을 볼의 항목에서 레지스트리 키HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion
,useGet-Item
. 레지스트리 키 키의 레지스트리 항목 목록 인”속성”의 일반 이름을 가진 속성이 있습니다.다음 명령은 속성 속성을 선택하고 목록에 표시되도록 항목을 확장합니다:
DevicePathMediaPathUnexpandedProgramFilesDirCommonFilesDirProductId
레지스트리를 보 항목이 더 읽기 쉬운 형태로 사용하는Get-ItemProperty
Get-ItemProperty -Path Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
Windows PowerShell-관련성에 대한 열쇠는 모든 앞에”PS”,등 asPSPath,PSParentPath,PSChildName 및 PSProvider.
현재 위치를 참조하기 위해*.*
Set-Location
를 사용하여 CurrentVersion 레지스트리 컨테이너로 먼저 변경할 수 있습니다:
Set-Location -Path Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
또는 사용할 수 있습니다 내장\SOFTWARE\PSDriveSet-Location
Set-Location -Path hklm:\SOFTWARE\Microsoft\Windows\CurrentVersion
사용할 수 있는*.*
표기법에 대한 현재의 위치하여 목록 속성 withoutspecifying 전체 경로:
Get-ItemProperty -Path .
...DevicePath : C:\WINDOWS\infMediaPathUnexpanded : C:\WINDOWS\MediaProgramFilesDir : C:\Program Files...
경로의 확장과 동일하게 작동합니다 그것은 파일 시스템 내에서,그래서 이 위치할 수 있습 getthe ItemProperty 목록에 대한HKLM:\SOFTWARE\Microsoft\Windows\Help
Get-ItemProperty -Path ..\Help
.
얻는 단일 레지스트리의 항목
를 검색하려는 경우 특정 항목에서 레지스트리 키를 사용할 수 있습니다,하나의 몇 가지 possibleapproaches. 이 예제에서는HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
에서 DevicePath 의 값을 찾습니다.
UsingGet-ItemProperty
경로를 사용하여 매개변수의 이름을 지정하려면 키를,그리고 이름을 지정하는 매개 변수의 이름을 DevicePath 항목입니다.
Get-ItemProperty -Path HKLM:\Software\Microsoft\Windows\CurrentVersion -Name DevicePath
이 명령은 DevicePathproperty 뿐만 아니라 표준 Windows PowerShell 속성을 반환합니다.
참고.
지만Get-ItemProperty
는 필터를,포함 및 제외 매개 변수들을 사용할 수 없을 필터에 의 속성 이름입니다. 이러한 매개 변수는 항목 속성 인 항목 경로 및 레지스트리 항목이 아닌 레지스트리 키를 나타냅니다.
또 다른 옵션은 Reg 를 사용하는 것입니다.exe 명령 줄 도구. 레지에 대한 도움.exe,명령 프롬프트에서reg.exe /?
를 입력하십시오. DevicePath 항목을 찾으려면 reg 를 사용하십시오.다음 명령과 같이 exe:
reg query HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion /v DevicePath
사용할 수도 있습니다에서 여 wshshell COM 개체뿐만 아니라 일부를 찾을 레지스트리의 항목이 있지만,이 방법에서는 작동하지 않으로 큰 바이너리 또는 데이터 레지스트리의 항목을 포함하는 이름 characterssuch 로”\”). 추가 호텔 이름 항목 경로는\분리기:
(New-Object -ComObject WScript.Shell).RegRead("HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\DevicePath")
%SystemRoot%\inf
설정하는 단일 레지스트리의 항목
를 변경하려면 특정 항목에서 레지스트리 키를 사용할 수 있습니다,하나의 몇 가지 possibleapproaches. 이 예제에서는HKEY_CURRENT_USER\Environment
아래의 경로 항목을 수정합니다. 경로 항목은 실행 파일을 찾을 위치를 지정합니다.
Get-ItemProperty
를 사용하여 경로 항목의 현재 값을 검색합니다.- 새 값을 추가하여
;
로 분리하십시오. - 지정된 키,항목 이름 및 값으로
Set-ItemProperty
를 사용하여 registryentry 를 수정합니다.
참고.
지만Set-ItemProperty
는 필터를,포함 및 제외 매개변수,theycannot 사용을 필터에 의 속성 이름입니다. 이러한 매개 변수는 항목 속성 인 항목 경로 및 레지스트리 항목이 아닌 레지스트리 키를 나타냅니다.
또 다른 옵션은 Reg 를 사용하는 것입니다.exe 명령 줄 도구. 레지에 대한 도움.exe,reg 를 입력하십시오.exe/?명령 프롬프트에서.
다음 예제는 위의 예에서 추가 된 경로를 제거하여 경로 항목을 변경합니다.Get-ItemProperty
은 여전히 사용하여 검색하는 현재 값을 피하기 위해,구문 분석 stringreturned 에서reg query
. 하위 문자열 및 LastIndexOf 메서드는 경로 항목에 추가 된 마지막 경로를 검색하는 데 사용됩니다.
The operation completed successfully.
새로 만드는 레지스트리의 항목
새 항목을 추가하라”PowerShellPath”을 CurrentVersion 키를 사용하는New-ItemProperty
경로로 키,항목 이름과 값의 항목입니다. 이 예제에서는 Windows PowerShell 변수$PSHome
의 값을 가져 와서 Windows PowerShell 용 설치 디렉토리의 경로를 저장합니다.다음 명령을 사용하여 키에 새 항목을 추가 할 수 있으며 명령은 새 항목에 대한 정보도 반환합니다:이 문제를 해결하려면 어떻게해야합니까?Win32.RegistryValueKind 열거 멤버다음 표에서:
PropertyType Value | Meaning |
---|---|
Binary | Binary data |
DWord | A number that is a valid UInt32 |
ExpandString | A string that can contain environment variables that are dynamically expanded |
MultiString | A multiline string |
String | Any string value |
QWord | 8 bytes of binary data |
참고.
추가할 수 있습니다 레지스트리 항목은 여러 위치 지정하여 배열의 값 thePath 매개변수:
할 수도 있습니다 덮어쓰기는 기존의 레지스트리 항목의 값을 추가하여 강제 매개변수를 모든New-ItemProperty
명령입니다.
의 이름 바꾸기 레지스트리의 항목
이름을 바꾸 PowerShellPath 항목을”PSHome,사용”Rename-ItemProperty
Rename-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion -Name PowerShellPath -NewName PSHome
를 표시할 이름 값을 추가,경유의 매개 변수를 명령입니다.
Rename-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion -Name PowerShellPath -NewName PSHome -passthru
삭제하는 레지스트리의 항목
모두 삭제합 PSHome 및 PowerShellPath 레지스트리 항목을 사용하는Remove-ItemProperty