Computer >> 컴퓨터 >  >> 시스템 >> Windows

Windows PowerShell로 레지스트리 값 수정하는 방법

레지스트리 항목은 레지스트리 편집기(Registry Editor)를 사용하면 손쉽게 수정할 수 있습니다. 하지만 업무상 스크립트 작업이 많은 환경이라면 PowerShell을 통해 레지스트리를 직접 수정해야 할 때가 있습니다. 이 글은 그런 경우에 유용하게 활용할 수 있는 방법을 소개합니다.

PowerShell로 레지스트리 값 변경하기

여기서는 널리 알려진 두 가지 PowerShell cmdlet을 사용해 레지스트리를 수정하는 방법을 살펴봅니다. 첫 번째는 New-Item, 두 번째는 Set-ItemProperty입니다. 두 cmdlet 중 어느 것이든 기존 레지스트리 키를 수정하거나 새 레지스트리 값을 추가하는 데 사용할 수 있습니다.

1] New-Item PowerShell cmdlet으로 레지스트리 수정하기

이 예제에서는 다음 경로에 AllowIndexingEncryptedStoresOrItems라는 레지스트리 DWORD를 생성하고 값을 1로 설정해 보겠습니다.

HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Windows Search

일반적으로 이 레지스트리 DWORD는 Windows 10에서 암호화된 파일의 인덱싱을 허용하기 위해 생성됩니다. Windows Search 레지스트리 키는 기본적으로 존재하지 않으므로 먼저 해당 키를 만든 뒤, 레지스트리 DWORD를 생성하고 값을 1로 설정해야 합니다. 사용자는 자신의 환경에 맞게 레지스트리 키 위치와 값을 변경하면 됩니다. 단계별 절차는 다음과 같습니다.

먼저 관리자 권한으로 Windows PowerShell을 실행합니다.

다음 명령을 입력하고 Enter 키를 눌러 레지스트리 위치로 이동합니다:

Set-Location -Path 'HKLM:\Software\Policies\Microsoft\Windows'

그런 다음 아래 cmdlet을 실행하여 'Windows Search'라는 새 레지스트리 하위 키를 생성합니다. 여기서는 동일한 이름의 레지스트리 항목이 이미 존재할 경우 이를 덮어쓰기 위해 -Force 매개변수를 사용했습니다.

Get-Item -Path 'HKLM:\Software\Policies\Microsoft\Windows' | New-Item -Name 'Windows Search' -Force

레지스트리 하위 키가 생성되었으면, 이제 다음 코드를 실행하여 레지스트리 DWORD를 생성합니다:

New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\Windows Search' -Name 'AllowIndexingEncryptedStoresOrItems' -Value "1" -PropertyType DWORD -Force

참고: 문자열(String) 형식의 값을 생성할 때는 -PropertyType을 String으로 지정해야 합니다.

작업이 완료되면 pop-location 명령을 실행하여 일반 PowerShell 환경으로 돌아간 뒤 다른 cmdlet을 계속 실행할 수 있습니다.

2] Set-ItemProperty PowerShell cmdlet으로 레지스트리 수정하기

두 번째 예제에서는 다음 경로에 HideSCAVolume 레지스트리 DWORD를 설정하고 값을 0으로 지정해 보겠습니다.

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies

이 DWORD 값을 0으로 설정하면 작업표시줄에서 사라진 볼륨(소리) 아이콘을 복원할 수 있습니다. 절차는 다음과 같습니다.

관리자 권한으로 Windows PowerShell을 실행합니다.

그런 다음 아래 cmdlet을 복사해 붙여넣기만 하면 레지스트리 조작이 바로 완료됩니다. 물론 코드에서 레지스트리 위치와 값은 자신의 환경에 맞게 수정해서 사용해야 합니다:

Set-ItemProperty -Path HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer -Name HideSCAVolume -Value 0 -Force

이 방법은 레지스트리 변경이 직접 적용되기 때문에 pop-location을 실행해 일반 PowerShell로 돌아갈 필요가 없다는 장점이 있습니다.

이 가이드가 Windows PowerShell을 사용한 레지스트리 수정 작업에 도움이 되기를 바랍니다.

추가로, PowerShell을 사용해 원격 Windows 컴퓨터를 다시 시작하는 방법도 함께 확인해 보시길 권장합니다.