2012-03-26 8 views
2

Ich habe versucht, eine Möglichkeit zu finden, eine Windows-Batch-Datei zu erhalten, um die aktuelle UTC-Zeit bei der Ausführung anzuzeigen. Also mit anderen Worten, die aktuelle Anzahl von Millisekunden, seit es im Jahr 1970 initiiert wurde.Wie UTC-Zeit mit Windows-Batch-Datei zu bekommen

Weiß jemand, wie man das macht.

+2

1970 hat nichts mit UTC zu tun. 1970-01-01 ist die Unix-Zeit und Unix-Zeit verwendet UTC, aber abgesehen davon sind die beiden völlig unabhängig. – Joey

Antwort

7

WMI verwenden:

for /f %%x in ('wmic path win32_utctime get /format:list ^| findstr "="') do set %%x 

Dadurch werden die Variablen gesetzt Day, DayofWeek, Hour, Minute, Month, Quarter, Second, WeekInMonth und Year, die Sie dann verwenden können.

Sie werden jedoch keine Zeit mit Unix-Epochen von Windows bekommen, obwohl. Wenn Sie Powershell haben, können Sie

[long]((date).touniversaltime()-[datetime]'1970-01-01').totalmilliseconds 

verwenden, die Sie von einer Batch-Datei über

powershell "..." 

Aber in diesem Fall nennen könnten Sie Ihre Batch-Datei in einer realen Sprache sowieso schreiben.