Technical stuff, which does not fit somewhere else

Some technical stuff

MENÜ

Über mich

2008-08-24Timestamp YYYY-MM-DDTHHMMSS in einer Windows Shell

Um einem einem Windows CMD-File einen korrekt formatierten Timestamp zu bekommen, gilt es ein kleines Problem zu überwinden. Die Uhrzeit der Environment-Variablem "%TIME%" ist leider bei Uhrzeiten von 10:00 mit einem führenden Space ausgegeben, nicht (wie bei %DATE%) mit einer führenden Null. Somit muss in einem CMD-File dies extra geprüft werden.

Einen Beispielcode liefere ich hier:

set DATUM_FORMATIERT=%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2%
 
set NOW=%TIME%
set VORNULL=NEIN
if "! !"=="!%NOW:~0,1%!" set VORNULL=0
if %VORNULL%==0 set STUNDE=0%NOW:~1,1%
if not %VORNULL%==0 set STUNDE=%NOW:~0,2%
set UHRZEIT_HHMMSS=%STUNDE%%NOW:~3,2%%NOW:~6,2%
 
set TIMESTAMP=%DATUM_FORMATIERT%T%UHRZEIT_HHMMSS%

			
Um das ganze auch bei Servern mit englischem Datumsformat zu erhalten, muss die Zeile set DATUM_FORMATIERT=%DATE:~10,4%-%DATE:~4,2%-%DATE:~7,2% verwendet werden.

(c) Wolfgang Wagner, Vienna, 2008