@echo off
for /f "tokens=2 delims==" %%i in ('wmic path Win32_OperatingSystem get localdatetime /value') do set Ymd=%%i
for /f "tokens=1-3" %%i in ("%Ymd:~,4% %Ymd:~4,2% %Ymd:~6,2%") do set /a Y=%%i,M=1%%j%%100,D=1%%k%%100,JD=365*(Y-1)+(Y-1)/4-(Y-1)/100+(Y-1)/400+1721425
if %M% equ 1 (set/a JD+=D)else if %M% equ 2 (set/a JD+=D+31)else set/a i="!(Y%%4)&!(!(Y%%100))|!(Y%%400)",JD+=13*(M+1)/5-7+(M-1)*28+D+i
set/p S=请输入分时数:
for /f "tokens=1,2 delims=:" %%i in ('time /t') do set/a S+=100%%j%%100,H=100%%i%%100*60+s
set/a T=H/1440,S=H%%60,H=H/60%%24
if %t% geq 1 call:BY Terse
for %%i in (M D H S) do call set %%i=0%%%%i%%
echo %Y%年%M:~-2%月%D:~-2%日 %H:~-2%时%S:~-2%分
pause&exit
:BY Terse
set/a JD+=T,w=(JD+1)%%7
if %JD% leq 2299160 set/a JD-=10
set /a JD+=68569,N=(4*JD)/146097,JD-=(146097*N+3)/4,I=(4000*JD+1)/1461001,JD-=(1461*I)/4-31,J=(80*JD)/2447,D=JD-(2447*J)/80,JD=J/11,M=J+2-(12*JD),Y=100*(N-49)+I+JD