Logo faq-o-matic.net
Logo faq-o-matic.net

Zeitangaben im Batch verwenden

von veröffentlicht am16. Juni 2011, 06:58 Uhr Kurzlink und Zitatlink einblenden
Kategorie Kategorie: Batch   Translate with Google Translate Translate EN   Die angezeigte Seite drucken

Die klassische Command-Shell in Windows ist funktional sehr eingeschränkt. Trotzdem bietet sie für viele Aufgaben eine leicht beherrschbare Automatisierung durch einfache Kommando-Stapel – oder bekannter: Batches. Eine der fehlenden Funktionen betrifft den Umgang mit Datums- und Zeitangaben.

Möchte man das aktuelle Datum und die aktuelle Zeit in einem Batch verwenden, z.B. um Dateien oder Ordner nach dem Zeitstempel zu benennen, so helfen folgende FOR-Funktionen. Sie sind hier auf das deutsche Datumsformat abgestimmt, verwenden also den Punkt (beim Datum) bzw. den Punkt, den Doppelpunkt und das Komma (bei der Zeit) als Trenner. Wer eine andere Regionaleinstellung verwendet, passt diese Trennzeichen entsprechend an.

for /f "tokens=1-4 delims=. " %%i in ("%date%") do (
  set day=%%i
  set month=%%j
  set year=%%k
)

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

Die einzelnen Teile der Zeit- und Datumsangabe finden sich dann in den verschiedenen Variablen. Um sie in einem Ordner zu verwenden, eignet sich etwa folgende Syntax:

SET Ziel=%Drive%\%year%-%month%-%day%-%hour%-%minute%
if not exist %Ziel%\. md %Ziel%

© 2005-2019 bei faq-o-matic.net. Alle Rechte an den Texten liegen bei deren Autorinnen und Autoren.

Jede Wiederveröffentlichung der Texte oder von Auszügen daraus - egal ob kommerziell oder nicht - bedarf der ausdrücklichen Genehmigung durch die jeweiligen Urheberinnen oder Urheber.

Das Impressum findet sich unter: http://www.faq-o-matic.net/impressum/

Danke, dass du faq-o-matic.net nutzt. Du hast ein einfaches Blog sehr glücklich gemacht!