
77880
17.06.2009, aktualisiert am 18.10.2012
Dateinamen um die Angabe der Kalenderwoche ergänzen
Hallo,
ich habe ein Skript geschrieben, das mit dem Windows-Tool ntbackup eine Sicherung erstellt.
Am Montag wird eine Voll-Sicherung durchgeführt, an den restlichen Tagen eine inkrementelle.
Das klappt soweit auch.
Nur möchte ich mehrere Sicherungen speichern, weswegen die sich die Dateinamen unterscheiden müssen. Dazu möchte ich die Kalenderwoche in den Dateinamen einbauen.
Wie mache ich das?
Hier mein Skript:
@echo off
@rem Written by A P (Juni 2009)
FOR /F "TOKENS=1 DELIMS= " %%A IN ('DATE/T') DO SET DAY=%%A
IF "%DAY%"=="Mo" GOTO FULL
IF "%DAY%"=="Di" GOTO INCN
IF "%DAY%"=="Mi" GOTO INCN
IF "%DAy%"=="Do" GOTO INCN
IF "%Day%"=="Fr" GOTO INCN
GOTO EXIT
:FULL
ntbackup backup D:\temp /M normal /J "Systemstate" /L:s /V:yes /F "D:\backup.bkf" [Speicherort und Dateiname]
GOTO EXIT
:INCN
ntbackup backup D:\temp /A /M incremental /J "Systemstate" /L:s /V:yes /F "D:\backup.bkf"
GOTO EXIT
:EXIT
Wäre schön, wenn ihr mir helfen könntet, wie ich die Variable Kalenderwoche in den Dateinamen bekomme.
Vielen Dank schon mal!
Gruß,
Iwantu
ich habe ein Skript geschrieben, das mit dem Windows-Tool ntbackup eine Sicherung erstellt.
Am Montag wird eine Voll-Sicherung durchgeführt, an den restlichen Tagen eine inkrementelle.
Das klappt soweit auch.
Nur möchte ich mehrere Sicherungen speichern, weswegen die sich die Dateinamen unterscheiden müssen. Dazu möchte ich die Kalenderwoche in den Dateinamen einbauen.
Wie mache ich das?
Hier mein Skript:
@echo off
@rem Written by A P (Juni 2009)
FOR /F "TOKENS=1 DELIMS= " %%A IN ('DATE/T') DO SET DAY=%%A
IF "%DAY%"=="Mo" GOTO FULL
IF "%DAY%"=="Di" GOTO INCN
IF "%DAY%"=="Mi" GOTO INCN
IF "%DAy%"=="Do" GOTO INCN
IF "%Day%"=="Fr" GOTO INCN
GOTO EXIT
:FULL
ntbackup backup D:\temp /M normal /J "Systemstate" /L:s /V:yes /F "D:\backup.bkf" [Speicherort und Dateiname]
GOTO EXIT
:INCN
ntbackup backup D:\temp /A /M incremental /J "Systemstate" /L:s /V:yes /F "D:\backup.bkf"
GOTO EXIT
:EXIT
Wäre schön, wenn ihr mir helfen könntet, wie ich die Variable Kalenderwoche in den Dateinamen bekomme.
Vielen Dank schon mal!
Gruß,
Iwantu
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 118433
Url: https://administrator.de/forum/dateinamen-um-die-angabe-der-kalenderwoche-ergaenzen-118433.html
Ausgedruckt am: 18.05.2025 um 03:05 Uhr
6 Kommentare
Neuester Kommentar

Hallo Iwantu.
Schau mal 7 Beiträge zurück, da habe ich heute fast die gleiche Antwort gepostet
Beim ermitteln der jeweiligen Daten kann dir
oder auch die
Date and Time functions aus Ritchie Lawrence' Batch Library helfen.
Gruß
LotPings
Schau mal 7 Beiträge zurück, da habe ich heute fast die gleiche Antwort gepostet
Beim ermitteln der jeweiligen Daten kann dir
oder auch die
Date and Time functions aus Ritchie Lawrence' Batch Library helfen.
Gruß
LotPings
Moin Iwantu,
da ja nun beide angegebenen Quellen eher etwas holzig zu Lesen sind, eine kleine Motivationshilfe.
In meinem angegebenen Workshop III ist eine GetAllDateTimeInfos.cmd zum Copy & Pasten.
Wenn Du die aufrufst mit einem Parameter im Datumsformat (oder OHNE Parametr für heutiges Datum), kannst Du auf folgende abgeleitete Werte zugreifen:
... und zwar direkt durch Filtern dieser Ausgabe oder über das Setzen/Verwenden der gleichnamigen Variablen.
In Deinem Fall wären KW bzw. OSKW interessant.
Gegen Ende des Tuts habe ich ein Beispiel, wie der DoY/DayOfYear in den Dateinamen eingefügt werden kann - diesen Einzeiler müsstest Du nur noch von DoY auf Kalenderwoche anpassen.
Grüße
Biber
da ja nun beide angegebenen Quellen eher etwas holzig zu Lesen sind, eine kleine Motivationshilfe.
In meinem angegebenen Workshop III ist eine GetAllDateTimeInfos.cmd zum Copy & Pasten.
Wenn Du die aufrufst mit einem Parameter im Datumsformat (oder OHNE Parametr für heutiges Datum), kannst Du auf folgende abgeleitete Werte zugreifen:
>GetAllDateTimeInfos 19.06.2009
INDate=19.06.2009
INTime=20:35:49,94
DateOrder=TT-MM-JJ
KW=24
OSKW=25
DoW=6
DoY=170
DD=19
TT=19
MM=06
JJ=2009
YY=2009
hh=20
min=35
ss=49
ms=94
In Deinem Fall wären KW bzw. OSKW interessant.
Gegen Ende des Tuts habe ich ein Beispiel, wie der DoY/DayOfYear in den Dateinamen eingefügt werden kann - diesen Einzeiler müsstest Du nur noch von DoY auf Kalenderwoche anpassen.
Grüße
Biber
Moin Iwantu,
nein, diese Fehlermeldung weckt bei keine Erinnerungen an irgendetwas Vertrautes.
Müssen wir uns rantasten.
Geplanterweise soll die Batchdatei einen "zufällig" benannten temporären Schnipsel namens <Zufallszahl>.vbs im %temp%-Verzeichnis erzeugen.
Macht die Zeile SET "vbsSnippet=%temp%\%random%.vbs"
Und dieses Winz-VBS sollte ein paar Zeilen tiefer mit "cscript //logo %vbsSnippet%" aufgerufen werden.
Wie es der Zufall will habe ich gerade am Wochenende idesen Schnipsel in einem netten Dialog mit Moc06 unten in dem angegebenen Tutorial gepostet.
Copy & Paste die paar Zeilen mal, speichere die irgendwo (wo Du sie wiederfindest) als irgendwas.vbs ab und führe diesen Aufruf von Hand vom CMD-Prompt aus durch.
Damit wir den Fehler eingrenzen können.
Grüße
Biber
nein, diese Fehlermeldung weckt bei keine Erinnerungen an irgendetwas Vertrautes.
Müssen wir uns rantasten.
Geplanterweise soll die Batchdatei einen "zufällig" benannten temporären Schnipsel namens <Zufallszahl>.vbs im %temp%-Verzeichnis erzeugen.
Macht die Zeile SET "vbsSnippet=%temp%\%random%.vbs"
Und dieses Winz-VBS sollte ein paar Zeilen tiefer mit "cscript //logo %vbsSnippet%" aufgerufen werden.
Wie es der Zufall will habe ich gerade am Wochenende idesen Schnipsel in einem netten Dialog mit Moc06 unten in dem angegebenen Tutorial gepostet.
Copy & Paste die paar Zeilen mal, speichere die irgendwo (wo Du sie wiederfindest) als irgendwas.vbs ab und führe diesen Aufruf von Hand vom CMD-Prompt aus durch.
Damit wir den Fehler eingrenzen können.
Grüße
Biber