반응형

vs code가 제일 만들기 편하지만 .txt로 만든 뒤 확장자를 .bat로 바꿔 배치파일로 바꿔줘도 무방하다.

 

 

개발한 파일 소스를 한줄한줄 설명을 하는 방식으로 진행한다.

모든 보라색 글씨를 지우고 만들면 배치파일로써 작동할 것이다.

 

 

그러나 이 레지스트리는 백업 즉,

레지스트리를 보관할 파일로 복사 후 존재하는 레지스트리를 삭제하기 때문에

 

"지워도 되는 레지스트리"를 확인하고 실행하거나

"레지스트리 삭제" 부분을 설명을 이해한 후 제거하고 실행하기를 권장한다.

 

잘못된 실행으로 인한 피해는 글쓴이가 보상해줄 수 없다.

 

설명을 시작하겠다.

 

-----------------------------------------------------------------------------------------------------------------

@echo off 를 적어주고

 

set BackupDirectory=C:\backupFolder 레지스트리를 백업할 경로를 변수에 담아 준다(set)

set BackupFile=%BackupDirectory%\backupregistrylist.reg 해당 경로에 저장할 파일명과 확장자를 적어준다(set)

 

(%변수%은 shell script에서 기본적으로 변수를 사용하는 방법이다.)

 

set RegistryPath=HKEY_CURRENT_USER\할튼\백업할레지스트리경로 

ㄴ 특정 레지스트리를 찍기 뭐해서 백업하고자 하는 레지스트리를 각자 입력해서 set으로 변수에 담아준다.

 

reg query "%RegistryPath%" >nul 2>&1

if %errorlevel% equ 0 (

ㄴ 레지스트리가 있으면 이라는 뜻이다.

     정확히는 레지스트리를 체크하고 에러가 나지 않았으면 이라는 뜻이다.
    echo "%RegistryPath%" exists. 

    ㄴecho는 파이썬에서 print() 또는 c#에서 Console.Write() 정도로 생각하면 된다. 
    rem 

    ㄴ rem은 대략적으로 "다음을 출력한다" 라고 생각하면 된다. 같은 줄에 쓴 글은 주석으로 처리된다.
        if not exist "%BackupDirectory%" (

        ㄴ BackupDirectory로 설정한 경로가 없으면
            mkdir "%BackupDirectory%"

            ㄴ make directory의 약자이다. 해당 경로를 만든다.
            echo %BackupDirectory% not exist. make directory.

            ㄴ 위에도 설명했다. 화면에 출력하는 용도이다.
        )
        reg export "%RegistryPath%" "%BackupFile%" /y

        ㄴ RegistryPath 경로의 레지스트리를 BackupFile위치로 write한다. /y는 덮어쓰기 허용을 말한다.
        echo registry backup success.
        ㄴ echo 생략


        reg delete "%RegistryPath%" /f

        ㄴ 레지스트리를 삭제한다 /f는 뭔가 사용중이어도 강제로 진행한다는 뜻이다.
        echo %RegistryPath% is deleted.

        ㄴ echo 생략
) else (
    echo %RegistryPath% not exists.

    ㄴ if문이 레지스트리가 있으면 이었기 때문에 이자리에는 없는 경우에 실행할 부분이 나온다.

    ㄴ 이 예제에서는 레지스트리 경로가 존재하지 않는다라고 출력했다.
)

 

-----------------------------------------------------------------------------------------------------------------

 

이 파일 실행 후 생성된 레지스트리 파일 backupregistrylist.reg를 실행하면 백업했던 레지스트리가 다시 설치된다.

 

그대로 따라 하는 과정에서 shell script 언어가 어떻게 쓰이는지 아주 간단하게 나마 받아들일 수 있기를 바란다.

 

반응형

+ Recent posts