windows registry management using command line


reg 명령
https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/reg

 

 

//-------------------------------------
* 루트 경로 축약어
HKEY_CLASSES_ROOT - HKCR
HKEY_CURRENT_USER  - HKCU 
HKEY_LOCAL_MACHINE - HKLM
HKEY_USERS - HKU
HKEY_CURRENT_CONFIG - HKCC

 

    - 키가 없다고 에러가 나면 축약어 대신 원래 이름을 사용해 본다.



//-------------------------------------
* 값 형태 종류
https://docs.microsoft.com/en-us/windows-hardware/drivers/ddi/wdm/ns-wdm-_key_value_basic_information
REG_SZ - 문자열
REG_EXPAND_SZ - 확장 가능한 문자열, 환경변수("%PATH%" 등)을 인식
REG_MULTI_SZ - 다중 문자열

REG_BINARY - 이진값

REG_DWORD - 숫자(32bit)
REG_DWORD_BIG_ENDIAN - 숫자(32bit) - 윈도우 형식
REG_DWORD_LITTLE_ENDIAN - 숫자(32bit) - 유닉스 형식
REG_QWORD - 숫자(64bit)

REG_LINK -  RegCreateKeyEx() 함수로 생성한 null로 끝나는 유니코드 문자열
REG_FULL_RESOURCE_DESCRIPTOR - 하드웨어 리소스 목록

 


//-------------------------------------
키 생성
reg add "키경로" /f 
    - ex)
reg add "HKCU\Software\_Test\test" /f 



값 생성(수정)
reg add "키경로" /v "값이름" /t 값형태 /d 값 /f
    - ex)
reg add "HKCU\Software\_Test\test" /v "val" /t REG_DWORD /d 123 /f

    - 키의 기본값 생성
reg add "HKCU\Software\_Test\test" /ve  /t REG_SZ /d "기본1" /f


//-------------------------------------
키 삭제
reg delete "키경로" /f
    - ex)
reg delete "HKCU\Software\_Test\test" /f


값 삭제
reg delete "키경로" /v "값이름"  /f
    - ex)
reg delete "HKCU\Software\_Test\test" /v "val"  /f

    - 키의 모든 값들을 삭제 (하위 키는 삭제 안됨)  -   /va
reg delete "HKCU\Software\_Test\test" /va   /f

 

 

//-------------------------------------

*레지스트리 키를 파일로 백업 내보내기(export to file backup)

reg export "HKLM\Software\MyCo\MyApp" "AppBkUp.reg"

 

//-------------------------------------

*  레지스트리 백업 파일을 불러오기(레지스트리에 덮어쓰기)

reg import "백업파일.reg"

 

 

//-----------------------------------------------------------------------------

// 참고

PowerShell을 이용한 레지스트리 처리 (삭제시 와일드 카드 사용 가능)

https://codens.info/2432

 

 

반응형
Posted by codens