윈 도 우 배치파일로 윈도 설정과 관계없이 일정한 날짜 얻기
2022.02.16 23:38
그냥 단순하게 기존 레지스트리 백업하고, 레지스트리를 잠깐 변경해서 변수를 얻은 뒤, 다시 되돌리는 방식입니다.
FOR /F "USEBACKQ DELIMS=" %%I IN (`Reg query "HKEY_CURRENT_USER\Control Panel\International" /v "sShortDate"`) DO (
echo "%%I"
set "old=%%I"
)
set "old=%old:sShortDate=%"
set "old=%old:REG_SZ=%"
set "old=%old: =%"
echo "%old%"
Reg.exe add "HKCU\Control Panel\International" /v "sShortDate" /t REG_SZ /d "yy/MM/dd(ddd)" /f
:: 날짜 구하기
set YY=%date:~0,2%
set MM=%date:~3,2%
set DD=%date:~6,2%
set D=%date:~9,1%
:: 백업 폴더 이름 생성
set BDir=_%YY%.%MM%.%DD%[%D%]-OS재설치 전 백업
Reg.exe add "HKCU\Control Panel\International" /v "sShortDate" /t REG_SZ /d "%old%" /f
echo %BDir%
pause
댓글 [6]
-
cungice 2022.02.16 23:49
-
포토엔유 2022.02.17 06:24
감사합니다 바로 적용했습니다 -
지후빠 2022.02.17 08:11
히이이잌님! 좋은 아이디어 감사합니다. 강추입니다.^^
일전에 고민했던 내용인데 드뎌 결론에 도달한 것 같습니다. 좋은 아이디어에 제 아이디어를 함수 형태로 추가하여 봅니다.
FormatDate.cmd ; 관리자 권한으로 실행
@echo off
call :FormatDate "yy.MM.dd[ddd]" $DATE
set BDir=%$DATE%-OS재설치 전 백업
echo %BDir%
pause & exit /b
:FormatDate
for /f "tokens=2*" %%a in ('reg query "HKCU\Control Panel\International" /v "sShortDate"') do set sShortDate=%%b
Reg.exe add "HKCU\Control Panel\International" /v "sShortDate" /t REG_SZ /d "%~1" /f >nul
set %2=%DATE%
Reg.exe add "HKCU\Control Panel\International" /v "sShortDate" /t REG_SZ /d "%sShortDate%" /f >nul
goto:eof
-
ehdwk 2022.02.17 08:17
수고하셨습니다. -
더애드 2022.02.17 09:05
수고하셨습니다 ~
-
슈머슈마 2022.02.26 14:04
감사합니다. 잘보고 갑니다.
수고 많으셨습니다. 감사합니다.