목차
반응형
자가삭제 설정
Bat 또는 cmd 파일로 작성하면
실행 후 자가삭제가 가능하게 설정하려면 어떻게 해야 하나요?
@echo off
echo 기존의 윈도우 키를 삭제 합니다.
echo.
pause
slmgr.vbs /upk
echo.
echo.
echo 레지스트리에 있는 제품키를 삭제 합니다.
echo.
pause
slmgr.vbs /cpky
goto CDKEY
:CDKEY
set /p choice=홈에디션으로 변경을 하는 것이 맞으세요? 예(Y) / 아니오(N) :
if "%choice%" == "y" goto :YES
if "%choice%" == "n" goto :CDKEY
goto NO
:YES
echo.
echo.
echo 원도우10 제품키 변경 시작
echo.
pause
slmgr.vbs -ipk 제품키
echo.
echo.
echo 원도우10 제품인증 받기
echo.
pause
slmgr.vbs -ato
echo.
echo.
echo 원도우10 제품인증 확인
echo.
pause
slmgr.vbs -dlv
:NO
echo.
echo.
exit
· 해결방법
/* 해결방법 */
del %0
이렇게 하면 해결됩니다
· 안전하게
/* 안전하게 */
if exist "%0" (
del "%0"
)
웬만하면 이런 식으로 하시기 바랍니다.
배치파일에서 문제가 되는 부분이 여럿 있지만 중요한 것 중에 하나가
"경로명으로 가능한 문자가 인식 안 되는 현상"입니다.
대표적인 것이! % ^ & 이 4글자입니다.
저 글자들은 폴더명 파일명이 가능하지만 cmd에서
여러 명령어로도 쓰이는 글자인데 제대로 된 구분이 잘 안 되게 구성이 되어있습니다.
이게 상위경로명이나 폴더명에 있을 경우 적절한 처리가 되지 않으면 오류 나거나 버그 생깁니다.
즉 "잘못된 삭제"가 발생할 가능성이 있다는 거죠.(실행 안 되는 정도면 다행이겠죠.)
· 좀 더 안전하게
/* 좀 더 안전하게 */
setlocal DisableDelayedExpansion
cd /d %~dp0
if exist "%0" (
del "%~nx0"
)
SETLOCAL ENABLEDELAYEDEXPANSION
좀 더 안전하게 하려면 이게 좋습니다.
잘못하면 상위 파일 중에 겹치는 게 지워질 수 있으니까요.
유익한 정보였으면 좋겠습니다.
반응형
'IT인터넷' 카테고리의 다른 글
블로그에 등록되어 있는 분할 압축파일 다운로드 한방팩 (0) | 2024.04.02 |
---|---|
PDF-XChange Editor Plus 10.1.3.383 포터블·한글 (1) | 2023.12.10 |
티스토리 프로필 카드 안 보이게 수정! CSS (0) | 2023.11.27 |
웹사이트에 파비콘이 노출이 안됨 해결방법 (0) | 2023.08.24 |
티스토리 카테고리 원하는 위치에 추가하는 방법 (0) | 2023.08.24 |
브레드크럼(Breadcrumb) 적용 방법 코드제공 (0) | 2023.08.23 |