admin1987
Goto Top

Batchdatei Datum als Dateiname Problem Datum kurz und lang

Hallo ich habe ein Script welches mir das Datum als Parameter setzte

set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
set twdate=%jahr%%monat%%tag%

das ich es in meiner Sicherung als Teil eines Dateinames setzen kann.

Problem die Sicherung wird später bei vielen Kunden laufen, ich sehe ein Problem darin wenn jemand "Datum kurz"eingestellt hat im System da sich dann das Format verschiebt.

Wie kann ich dies Abfragen und falls ja andere Parameter setzen`?
Danke

lg chris

Content-ID: 81997

Url: https://administrator.de/contentid/81997

Ausgedruckt am: 22.11.2024 um 06:11 Uhr

miniversum
miniversum 29.02.2008, aktualisiert am 18.10.2012 um 18:35:26 Uhr
Goto Top
Das würde so gehen:
if %date:~-3,1% neq 0 (
set jahr=%date:~-2%
) else (
set jahr=%date:~-4%
)
set monat=%date:~-7,2%
set tag=%date:~-10,2%
set twdate=%jahr%%monat%%tag%
Es wird hier überprüft ob an der 3.letzten Stelle des Datums eine 0 steht. Das ist imem ran der Fall wenn das Jahr 2008 ist. Das Funktioniert bis ins Jahr 2100 und sollte denke ich ausrechend sein ;)

Allerdings ist diese Lösung auch nicht ganz kompartibel. Sollte jemand eine Ganz andere Formatierung des Datums haben, also nicht tt.mm.jjjj sondern z.B. mm-tt-jjjj oder sonst wie, würde das ganze nicht mehr passen. Wenn du das aber sicherstellen kannst ist es kein Problem.
Zu der ganzen Problematik gibt es auch ein Tutorial: Workshop Batch for Runaways - Part III - Datums- und Zeitvariablen im Batch

miniversum
Biber
Biber 04.03.2008 um 08:16:59 Uhr
Goto Top
Moin admin1987,

hat Dir miniversums Tipp geholfen? Hast Du eine Lösung für Dich gefunden?

Grüße
Biber
admin1987
admin1987 04.03.2008 um 08:18:04 Uhr
Goto Top
Guten Morgen!

Ja super habe es gerade integriert, genau das was ich suche-
VIELEN VIELEN DANK!!!

lg chris