ParseDateTime.cmd  

Posted by ReelTym

::::::::::::::::::::::::::::::::
:: Parse Date/Time
::
:: Test/Example:
::
::     ParseDateTime.cmd WITHECHO
::     echo date=[%date%] time=[%time%] year=[%year%] month=[%month%] day=[%day%] hour=[%hour%] minute=[%minute%] second=[%second%] hundredth=[%hundredth%]
::
::::::::::::::::::::::::::::::::
@echo off&setlocal
for /f "tokens=1-4 delims=/-. " %%G in ('date /t') do (call :s_fixdate %%G %%H %%I %%J)
goto :s_print_the_date
  
:s_fixdate
if "%1:~0,1%" gtr "9" shift
for /f "skip=1 tokens=2-4 delims=(-)" %%G in ('echo.^|date') do (set %%G=%1&set %%H=%2&set %%I=%3)
goto :eof

:s_print_the_date
endlocal&(
    echo.|date|find "JJ">nul
    if errorlevel 1 (
        :: English locale
        REM echo  year:[%yy%]  month:[%mm%]  day:[%dd%]
        set year=%yy%
        set month=%mm%
        set day=%dd%
    ) else (
        :: German locale
        REM echo  jahr:[%JJ%]  monat:[%MM%]  tag:[%TT%]
        set year=%JJ%
        set month=%MM%
        set day=%TT%
    )
)

for /f "tokens=1-4 delims=.:, " %%i in ("%time%") do (
    set hour=%%i
    set minute=%%j
    set second=%%k
    set hundredth=%%l
)
if %hour% lss 10 set hour=0%hour%

if "%1"=="WITHECHO" echo %year%-%month%-%day% %hour%:%minute%:%second%.%hundredth%

This entry was posted on Wednesday, May 23, 2012 and is filed under , . You can leave a response and follow any responses to this entry through the Subscribe to: Post Comments (Atom) .

0 comments