Letzte Aktualisierung am 15.12.2023, 16:12:21 Uhr
Gibt man standardmäßig die Befehle date /T und time /T in eine Eingabeaufforderung ein, werden Datum und Uhrzeit im deutsche Format ausgegeben.
Gerade bei Protokolldateien oder Exports verwendet man typischerweise Jahr-Monat-Tag_Stunde-Minute-Sekunde. Somit lässt sich mit Hilfe des Dateinamens einfach von Neu nach Alt sortieren. Durch die Migration von Batch zu PowerShell in den letzten Monaten und Jahren konnte ich mich nicht mehr an das Konstrukt (eine Zeile) erinnern.
Nach langem Probieren und Lesen der Hilfe kam es mir nach und nach wieder in den Kopf. Um in Zukunft Zeit zu sparen schreibe ich diesen Beitrag. 😉
set datetime=%date:~-4%-%date:~3,2%-%date:~0,2%_%time:~0,2%-%time:~3,2%-%time:~6,2% echo %datetime% 2023-12-15_16-41-35
Natürlich kann man Datum und Uhrzeit in zwei verschiedene Variablen schreiben lassen. Was zu einer höheren Flexibilität führt. Bei großen Skripten mache ich das sehr gerne.
set datum=%date:~-4%-%date:~3,2%-%date:~0,2% set zeit=%time:~0,2%-%time:~3,2%-%time:~6,2% echo %datum% 2023-12-15 echo %zeit% 16-42-29
Viel Spaß beim Ausprobieren. 🙂
Danken für die Beschreibung! Das Extrahieren von Teilstrings in Bat-Dateien suche ich schon lange. Es ist aber nirgends beschrieben.