배치파일

CASZONE X-TOOLS v4.3 (Win10, Win7)

by 관리자 posted Sep 01, 2019
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

네워크 정보는 사용자 환경에 맞게 수정하여 사용바랍니다.

 

----- Computer IP Setting -----

SET SUBNETMASK= 수정필요

SET GATEWAY= 수정 금지!

SET DNS1= 수정필요

SET DNS2= 수정필요

 

SET NICName= 수정필요

 



 

@echo off

title CASZONE X-TOOLS v4.3 (개발자:김인철)

>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"

if '%errorlevel%' NEQ '0' (

    echo Run as Administrator...

    goto UACPrompt

) else ( goto gotAdmin )

:UACPrompt

    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"

    set params = %*:"=""

    echo UAC.ShellExecute "cmd.exe", "/c %~s0 %params%", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs"

    rem del "%temp%\getadmin.vbs"

    exit /B

:gotAdmin

 

 

:MENU

 

c:

cd\

cls

echo.

echo ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒

echo.

echo          CASZONE X-TOOLS v4.3 (개발자:김인철)

echo.

echo ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒

echo.

echo.

echo [1] 교체 전 - 기존 PC 에서 (백업)

echo.

echo [2] 교체 후 - 새 PC 에서 (복원)

echo.

echo [3] 프로그램 닫기

echo.

echo.

set /p choice= "진행 할 작업 번호를 입력하세요 : "

echo. 

if "%choice%" == "1" goto :BEFORE

if "%choice%" == "2" goto :AFTER

if "%choice%" == "3" goto :END

goto MENU

echo.

 

 

:BEFORE

 

cls

 

echo.

echo.

echo 네트워크 정보 및 인증서를 백업 할 위치 선택하세요.

echo.

echo C 파티션을 제외한 드라이브를 지정하세요. 없으면 관리자에게 문의.

echo.

set /p DISK="디스크 드라이브 알파벳 d 또는 e 식으로 입력하세요. : "  

echo.

echo.

echo 위에 선택한 경로를 재확인합니다. 맞은면 엔터! 

echo ──────────────────────── 

echo.

 

set folder="%DISK%:\###CASZONE###"

 

set file="%folder%\_PRINTER_INFO.txt"

 

echo.

echo %folder%

echo.

echo %folder%\GPKI

echo.

echo %folder%\NPKI_program\NPKI

echo.

echo %folder%\NPKI_appdata\NPKI

echo.

 

pause

 

md "%folder%"

 

echo ───────────────────────── 

echo 1 PC 교체 전 - 기존 PC 설정 값 확인

echo ───────────────────────── 

echo. 

echo 1-1 컴퓨터 이름, 윈도우 계정명 확인 

echo. 

 

wmic computersystem get "Name", "UserName"

wmic computersystem get "Name", "UserName" > %file%

 

echo. 

echo 1-2 기존 PC본체 시리얼넘버 확인

echo. 

 

wmic computersystem get "Model","Manufacturer"

wmic bios get serialnumber

wmic computersystem get "Model","Manufacturer" >> %file%

wmic bios get serialnumber >> %file%

 

echo. 

echo ───────────────────────── 

echo 2 프린터 IP 및 포트 정보, 공유 설정 확인 

echo ───────────────────────── 

 

wmic printer get "Name", "PortName", "ShareName"

wmic printer get "Name", "PortName", "ShareName" >> %file%

 

echo.

echo.

echo ─────────────────────────

echo 3 네트워크 IP (이더넷) 정보 확인

echo ─────────────────────────

echo.

for /f "tokens=1-2 delims=:" %%a in ('ipconfig^|find "IPv4"') do set ip=%%b

set ip=%ip:~1%

echo IP address : %ip%

ipconfig /all > "%folder%\%ip%.txt"

 

echo.

echo.

echo.

echo ─────────────────────────

echo 4 기존 사용자 공인인증서 백업 작업

echo ─────────────────────────

echo.

echo.

echo.

 

md "%folder%\GPKI"

md "%folder%\NPKI_program\NPKI"

md "%folder%\NPKI_appdata\NPKI"

 

xcopy "%systemdrive%\GPKI" "%folder%\GPKI" /e /h /k /y

xcopy "%programfiles%\NPKI" "%folder%\NPKI_program\NPKI" /e /h /k /y

xcopy "%userprofile%\AppData\LocalLow\NPKI" "%folder%\NPKI_appdata\NPKI" /e /h /k /y

 

:: E 비어 있는 경우를 포함하여 디렉터리와 하위 디렉터리를 복사합니다.

:: H 숨겨진 파일과 시스템 파일도 복사합니다.

:: K 특성을 복사합니다. 일반적인 Xcopy는 읽기 전용 특성을 다시 설정합니다.

:: Y 기존 대상 파일을 덮어쓸지 여부를 묻지 않습니다.

 

md "%folder%\%DATE%\GPKI"

md "%folder%\%DATE%\NPKI_program\NPKI"

md "%folder%\%DATE%\NPKI_appdata\NPKI"

 

robocopy /MIR /ZB /XO /XA:H /R:1 /W:1 /V /NJH /NJS /TEE "%systemdrive%\GPKI" "%folder%\%DATE%\GPKI"

robocopy /MIR /ZB /XO /XA:H /R:1 /W:1 /V /NJH /NJS /TEE "%programfiles%\NPKI" "%folder%\%DATE%\NPKI_program\NPKI"

robocopy /MIR /ZB /XO /XA:H /R:1 /W:1 /V /NJH /NJS /TEE "%userprofile%\AppData\LocalLow\NPKI" "%folder%\%DATE%\NPKI_appdata\NPKI"

 

echo.

echo.

 

pause

 

%SystemRoot%\explorer.exe /n, /e, "%folder%"

 

goto END

 

 

echo ========================================================================

 

 

:AFTER

 

c:

cd\

cls

 

echo.

echo.

echo ─────────────────────────

echo 1 사용자 인증서 복원

echo ─────────────────────────

echo.

echo.

echo 네트워크 정보 및 인증서를 복원 할 데이터 위치 선택하세요.

echo.

echo #CASZONE# 폴더가 있는 드라이브를 선택하세요.

echo.

set /p DISK2="디스크 드라이브 알파벳 d 또는 e 식으로 입력하세요. : "  

echo.

echo.

echo 선택한 경로를 재확인합니다. 진행하려면 엔터! 

echo ──────────────────────── 

echo.

 

set folder="%DISK2%:\###CASZONE###"

 

set file="%folder%\_PRINTER_INFO.txt"

 

echo.

echo %folder%

echo.

echo %folder%\GPKI

echo.

echo %folder%\NPKI_program\NPKI

echo.

echo %folder%\NPKI_appdata\NPKI

echo.

 

pause

echo.

echo.

 

SET /p qa="백업 된 인증서가 %folder% 폴더에 있나요? (Y/N) : "

if /i %qa%==y goto AFTERYES

if /i %qa%==n goto AFTER

goto AFTER

echo.

 

 

:AFTERYES

 

cls

 

md "%systemdrive%\GPKI"

md "%programfiles%\NPKI"

md "%userprofile%\AppData\LocalLow\NPKI"

 

xcopy "%folder%\GPKI" "%systemdrive%\GPKI" /e /h /k /y

xcopy "%folder%\NPKI_program\NPKI" "%programfiles%\NPKI" /e /h /k /y

xcopy "%folder%\NPKI_appdata\NPKI" "%userprofile%\AppData\LocalLow\NPKI" /e /h /k /y

 

echo.

echo 인증서 복사가 완료 되었습니다.

echo.

pause

echo.

goto NETWORK

 

 

:NETWORK

 

cls

 

echo.

echo.

echo ─────────────────────────

echo 2 새로운 PC 컴퓨터 정보 및 네트워크 IP 변경

echo ─────────────────────────

echo.

echo.

SET /p netqa="네트워크 IP 텍스트 파일이 %folder% 폴더에 있나요? (Y/N) : "

if /i %netqa%==y goto NETWORKYES

if /i %netqa%==n goto AFTER

goto AFTER

echo.

 

 

:NETWORKYES

 

cls

 

FOR /F "delims=" %%i IN ("%folder%\98*.txt") DO (SET filename=%%~ni)

ECHO %filename%

ECHO %filename:~0,5%

 

for /F "tokens=3,4 delims=. " %%a in ("%filename%") do (

   set ipC=%%a

   set ipD=%%b

)

echo %filename:~0,5%.%ipC%.%ipD%

 

goto StartConfig

:StartConfig

cls

 

REM ------------------------------------- Computer IP Setting -----------------------------------------------

 

SET IPx4=%filename%

 

SET SUBNETMASK=255.255.255.128

SET GATEWAY=%filename:~0,5%.%ipC%.1

SET DNS1=10.1.1.5

SET DNS2=168.126.63.1

 

SET NICName=이더넷

 

REM ---------------------------------------------------------------------------------------------------------

 

echo.

SET /p COMName="사용자 이름을 입력하세요 (컴퓨터 이름) : "

echo.

 

echo.

SET /p WorkGroup="부서(과)명을 입력하세요 (작업 그룹) : "

echo.

 

cls

 

echo.

echo.

ECHO 전체 컴퓨터 이름  : %COMName%

echo.

ECHO 작업 그룹  : %WorkGroup%

echo.

ECHO IP    : %IPx4%

echo.

ECHO SUBNETMASTK   : %SUBNETMASK%

echo.

ECHO GATEWAY   : %GATEWAY%

echo.

ECHO DNS1    : %DNS1%

echo.

ECHO DNS2    : %DNS2%

echo.

echo.

goto QA

echo.

 

:QA

echo.

echo.

SET /p qa="설정 할 네트워크 값이 정확합니까? (1.예 / 2.아니요) 숫자 입력 : "

if /i %qa%==1 goto Exec

if /i %qa%==2 goto StartConfig

goto QA

echo.

 

:Exec

echo.

ECHO Starting Config....

echo.

ECHO y|REG add HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /v Hostname /t REG_SZ /d %COMName% > nul

ECHO y|REG add HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /v "NV Hostname" /t REG_SZ /d %COMName% > nul

ECHO y|REG add HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName /v ComputerName /t REG_SZ /d %COMName% > nul

echo.

echo.

echo 컴퓨터 이름이 %COMName% 으로 변경되었습니다.

echo.

echo.

ECHO 네트워크 IP 값 설정합니다.

echo.

netsh interface ip set address "%NICName%" static %IPx4% %SUBNETMASK% %GATEWAY% 1

echo.

ECHO 네트워크 DNS1 값 설정합니다.

echo.

netsh interface ip set dns name="%NICName%" source=static addr=%DNS1% register=PRIMARY

echo.

ECHO 네트워크 DNS2 값 설정합니다.

echo.

netsh interface ip add dns name="%NICName%" addr=%DNS2% index=2

echo.

echo.

wmic computersystem where name="%computername%" call joindomainorworkgroup name="%WorkGroup%"

echo.

wmic bios get serialnumber

wmic computersystem get "Model","Manufacturer"

wmic computersystem get "Name", "UserName"

wmic cpu get name

wmic os get name

wmic nicconfig get ipaddress,macaddress

echo.

echo.

echo.

echo 작업 그룹명을 %WorkGroup% 으로 변경, 재부팅 후 입력 값이 정확한지 확인하세요^^

echo.

echo.

echo.

 

pause

 

sysdm.cpl

 

goto END

echo.

 

:END

exit

echo.