exzel
Goto Top

Datum aus Ordnernamen auslesen

Hallo zusammen,

hab' eine Datensicherung per Bachtdatei erstellt. Die Ordner, in denen die Daten gesichert werden, werden mit md %date% nach dem Tagesdatum benannt. Ist es nun möglich einen Ordnernamen wie 23.03.2008 einzulesen, sieben Tage zu addieren und einen neuen Ordnernamen aus dieser Addition zu erstellen, also 30.03.2008? Natürlich müsste man immer den zuletzt erstellten Ordner ermitteln und dessen Erstelldatum um 7 Tage erhöhen.


Ordner im Sicherungslaufwerk

09.03.2008
16.03.2008
23.03.2008


Der nächste Ordner würde also 30.03.2008 heißen. Wie geht das unter der cmd.exe?

Gruß

Content-Key: 84300

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

Printed on: April 25, 2024 at 11:04 o'clock

Member: Biber
Biber Mar 31, 2008 at 06:40:31 (UTC)
Goto Top
Moin Exzel,

die Aufgabenstellung ist unklar bzw. nicht einleuchtend.

  • wenn es sich um einen Sicherungsordner handelt (evtl. auch eine automatisierte Datensicherung per TaskPlaner?), dann sollte dieser Ordner das Tagesdatum bekommen. Dafür brauchst Du keine Addition.
  • wenn Du das Datum aus den Namen der bereits vorhandenen Ordner ableiten willst, dann ist es sowohl für einen Programm-Algorithmus wie auch für die ganz normale Explorer-Namens-Sortier-Anzeige erschwerend, diesen Ordnern Namen wie "28.03.2008" zu geben. Da ist dann eine Namensgebung wie "20080328" sinnvoller und auch optisch sofort "richtig" vorhanden.

Bitte denk noch mal kurz über den Plan nach (ruhig hier im Forum).
Handwerklich ist es zwar (natürlich) machbar, aber...

Grüße
Biber
Member: Exzel
Exzel Mar 31, 2008 at 07:42:04 (UTC)
Goto Top
Danke für die Antwort,

per Taskplaner ergibt sich das Problem, sollte der Computer ausgeschaltet sein, der Task nicht nachgeholt wird, sondern erst wieder zum nächsten Sicherungstermin startet.

Per Batchdatei kann ich evtl. flexibler handeln und ich benötige keine Zusatzprogramme.

Deshalb wollte ich diesen Weg einschlagen.


Gruß
Member: Biber
Biber Mar 31, 2008 at 09:03:38 (UTC)
Goto Top
Moin Exzel,

dann gilt aber auch, dass das Datum des Sicherungsordner gleich dem aktuellen Datum sein sollte.

Wenn du am 1. April eine Sicherung startest, dann willst Du doch wohl nicht, dass ein doofer Batch nachschauen soll, von wann wohl die letzte Sicherung ist (Beispiel: gefunden wird "16.03.2008" oder auch "28.03.2008") und 7 Tage draufschlägt.

Oder fehlt mir noch irgendein Detail Deiner Anforderung?

Grüße
Biber
Member: Exzel
Exzel Mar 31, 2008 at 09:28:30 (UTC)
Goto Top
Das Detail, was ich noch nicht klar genannt habe. Die Sicherung soll einmal in der Woche starten. Die Batchdatei würde bei jedem Start ausgeführt, auf dem Sicherungslaufwerk die Ordnernamen eingelesen werden z.B.


09.03.2008
16.03.2008
23.03.2008


und sollte mindestens eine Woche zur letzten Sicherung vergangen sein, wird ein neuer Ordner mit dem aktuellen Tagesdatum erstellt und darin die Sicherung kopiert.

Würde der Computer also heute (31.03.2008) eingeschaltete werden, würden die Ordner eingelesen und da am 23.03.2008 die letzte Sicherung durchgeführt wurde, was acht Tage Abstand bedeutet, wird ein neuer Ordner mit dem Datum 31.03.2008 erstellt und die Sicherung gestartet.

Alles klar?

Gruß
Member: Biber
Biber Mar 31, 2008 at 13:24:08 (UTC)
Goto Top
Okay, in diesem Fall...

...dann würde ich als Kernstück der Prüfung eine Zeile temporäres VBSkript nehmen, nämlich (zum Testen):

' ---------snipp ShowDaysSinceDate.vbs  
'liefert Anzahl Tage von Parameter1 "Datum" bis heute zurück heute   
Wscript.echo datediff("d", wscript.arguments(0), date)  
-oder-
' ---------snipp IsOlderAWeek.vbs  
' ---> liefert TRUE/Errorlevel 0 zurück, wenn Parameter1 "Datum" älter eine Woche 
Wscript.quit(datediff("d", wscript.arguments(0), date)< 7) 

Du kannst also z.B. die (Pseudo-)Funktion ShowDaysSinceDate() im Batch so erzeugen und aufrufen:
::----TestMyDaSi.bat
@echo off & setlocal
set "tempvbs=%temp%\ShowDaysSinceDate.vbs"  
echo WScript.echo datediff("d", wscript.arguments(0), date)>"%tempvbs%"  
:: Die vorhandenen DaSi-Ordnernamen einlesen sortiert nach Erzeugungsdatum; neuestes merken
For %%f %%i in ('dir /aD /o-d /b x:\DaSiRoot\??.??.????') do set "LastDaSiDir=%%~ni"  
:: In %LastDaSiDir" sollte jetzt z.B. "28.03.2008" stehen 
::
:: TempVBKrams aufrufen:
For /f %%i in ('cscript //nologo "%tempvbs%" %lastDaSiDir%') do set /a AnzTage=%%i  
del "%tempvbs%"  
::
:: wenn Anzahl Tage Größer gleich 7, dann neuen Ordner mit Tagesdatum anlegen.
If %AnzTage GEQ 7 md "x:\DaSiRoot\%date%"  

:: .....hier kommt der eigentliche Sicherungszirkus...
[ungetestete Skizze]

Grüße
Biber
Member: bastla
bastla Mar 31, 2008 at 13:47:16 (UTC)
Goto Top
Hallo Exzel!

Alles klar?
Jetzt ja - allerdings hat sich die Aufgabenstellung gewandelt in: "Stelle fest, ob seit der letzten Sicherung mindestens 7 Tage vergangen sind."

Eine Lösung in native Batch wäre vergleichsweise aufwändig, daher eine Variante mit (eingebettetem temporärem) VBS:
@echo off & setlocal
set "Sich=D:\Sicherungen"  

for /f "delims=" %%i in ('dir /b  /ad /od "%Sich%"') do set "Zuletzt=%%i"  
set DD=%temp%\DateDiff.vbs
echo WScript.Echo DateDiff("d",WScript.Arguments(0),Now)>%DD%  
for /f %%i in ('cscript //nologo %DD% %Zuletzt%') do set /a Tage=%%i  

echo Alter der letzten Sicherung: %Tage% Tage
if %Tage% geq 7 echo Sicherung erforderlich

Wie schon von Biber angemerkt, ist die von Dir verwendete Datumsschreibweise für Sortierungszwecke nicht wirklich geeignet, daher wird hier das Änderungsdatum der Ordner zugrundegelegt und auf Basis dessen das Alter des jüngsten Ordners in Tagen ermittelt.

Mit der skizzierten Abfrage nach >= 7 Tagen ("greater or equal") kannst Du dann, wenn erforderlich, die nächste Sicherung ausführen lassen.

Grüße
bastla

[Edit]@Biber: Na da hab' ich ja wieder ewig gebraucht - liegt sicher an der Sommerzeit, wenn Du mich an einem Montag derart abhängst ... face-wink [/Edit]
Member: Biber
Biber Mar 31, 2008 at 14:19:53 (UTC)
Goto Top
@bastla
Na da hab' ich ja wieder ewig gebraucht..

das solltest Du gelassen sehen... andere Foren brauchen Monate für eine Lösung bei solchen Fragen.
Und hier gibts nach ein paar Stunden schon mehrere Alternativen.

Und hier wird sogar die rein handwerkliche Lösung erst dann gepostet, wenn alles versucht worden ist, zuerst das Konzeptionelle auf die richtige Schiene zu bringen.

Also - eigentlich sehe ich hier keinen Grund zur Bescheidenheit.

....obwohl.... besser werden können wir immer....

Grüße
Biber
Member: Exzel
Exzel Mar 31, 2008 at 15:09:21 (UTC)
Goto Top
Hallo Biber und Bastla,

vielen Dank für Eure Hilfe!

Leider kenn' ich mich mit VB-Script überhaupt nicht aus.


Bei einer Lösung habe ich nun den Sicherungspfad wie folgt angepasst.

::----TestMyDaSi.bat
@echo off & setlocal
set "tempvbs=%temp%\ShowDaysSinceDate.vbs"  
echo WScript.echo datediff("d", wscript.arguments(0), date)>"%tempvbs%"  
:: Die vorhandenen DaSi-Ordnernamen einlesen sortiert nach Erzeugungsdatum; neuestes merken
For %%f %%i in ('dir /aD /o-d /b d:\??.??.????') do set "LastDaSiDir=%%~ni"  
:: In %LastDaSiDir" sollte jetzt z.B. "28.03.2008" stehen 
::
:: TempVBKrams aufrufen:
For /f %%i in ('cscript //nologo "%tempvbs%" %lastDaSiDir%') do set /a AnzTage=%%i  
del "%tempvbs%"  
::
:: wenn Anzahl Tage Größer gleich 7, dann neuen Ordner mit Tagesdatum anlegen.
If %AnzTage GEQ 7 md "d:\%date%"  

Hier ist dann die VBS-Datei.
' ---------snipp ShowDaysSinceDate.vbs  
'liefert Anzahl Tage von Parameter1 "Datum" bis heute zurück heute   
Wscript.echo datediff("d", wscript.arguments(0), date)  


Führe ich nun die BAT-Datei aus, bekomme ich folgende Fehlermeldung.

"%i" ist syntaktisch an dieser Stelle nicht verarbeitbar.


Und bei der Lösung

@echo off & setlocal
set "Sich=D:\"  

for /f "delims=" %%i in ('dir /b  /ad /od "%Sich%"') do set "Zuletzt=%%i"  
set DD=%temp%\DateDiff.vbs
echo WScript.Echo DateDiff("d",WScript.Arguments(0),Now)>%DD%  
for /f %%i in ('cscript //nologo %DD% %Zuletzt%') do set /a Tage=%%i  

echo Alter der letzten Sicherung: %Tage% Tage
if %Tage% geq 7 echo Sicherung erforderlich
erhalte ich die Fehlermeldung

Windows Script Host:

Zeile: 1
Zeichen: 1
Fehler ungültiges Zeichen


Bitte helft mir nochmals. Alleine bin ich echt verloren.


[Edit Biber] -Tags ergänzt. Sonst werden 2 Backslashes interpretiert als "Beginne kursiv.." [/Edit]
Member: bastla
bastla Mar 31, 2008 at 16:07:38 (UTC)
Goto Top
Hallo Exzel!

Anscheinend machen die "/" Probleme (insbesondere vor "nologo" sind zwei Stück davon erforderlich) ...

Hier nochmals Biber's Variante:
@echo on & setlocal
set "tempvbs=%temp%\ShowDaysSinceDate.vbs"  
echo WScript.echo datediff("d", wscript.arguments(0), date)>"%tempvbs%"  
:: Die vorhandenen DaSi-Ordnernamen einlesen sortiert nach Erzeugungsdatum; neuestes merken
For /f %%i in ('dir /aD /od /b D:\??.??.????') do set "LastDaSiDir=%%~ni"  
:: In %LastDaSiDir" sollte jetzt z.B. "28.03.2008" stehen 
::
:: TempVBKrams aufrufen:
For /f %%i in ('cscript //nologo "%tempvbs%" %lastDaSiDir%') do set /a AnzTage=%%i  
del "%tempvbs%"  
::
:: wenn Anzahl Tage Größer gleich 7, dann neuen Ordner mit Tagesdatum anlegen.
If %AnzTage GEQ 7 md "D:\%date%"  
und meine Version (übrigens auch ein Batch, daher mit dem Typ ".bat" oder ".cmd" zu speichern):
@echo off & setlocal
set "Sich=D:\??.??.????"  

for /f "delims=" %%i in ('dir /b /ad /od "%Sich%"') do set "Zuletzt=%%i"  
set DD=%temp%\DateDiff.vbs
echo WScript.Echo DateDiff("d",WScript.Arguments(0),Now)>%DD%  
for /f %%i in ('cscript //nologo %DD% %Zuletzt%') do set /a Tage=%%i  

echo Alter der letzten Sicherung: %Tage% Tage
if %Tage% geq 7 echo Sicherung erforderlich
Biber hat den Quellpfad durch Festlegung eines Suchmusters für das Namensformat mit "??.??.????" genauer angegeben, während ich mich darauf verlassen hatte, dass sich im Quellordner ohnehin nur Sicherungsordner befinden - ich habe das jetzt auch bei meinem Batch sicherheitshalber noch ergänzt.

Grüße
bastla
Member: Biber
Biber Mar 31, 2008 at 18:03:36 (UTC)
Goto Top
...ich hasse Montage.... face-wink

Okay, ich habe zwar oben geschrieben "ungetestete Skizze", aber dass ich so viele Bugs auf so kleinem Raum untergebracht habe, das habe ich wirklich nicht angenommen.

Ein (ja offensichtlich leicht zu überlesender) Tippfehler steckt hier:
For %%f %%i in ('dir /aD ....
und sollte natürlich heißen.
For /f %%i in ('dir /aD ...
Den Bug hat bastla stillschweigend geglättet.

Wo allerdings bastla auch seinen Montag mit mir teilte war....
Biber hat den Quellpfad durch Festlegung eines Suchmusters für das Namensformat mit "??.??.????" genauer angegeben, während ich mich darauf verlassen hatte, dass sich im Quellordner ohnehin nur Sicherungsordner befinden - ich habe das jetzt auch bei meinem Batch sicherheitshalber noch ergänzt.

Ja, ja... sicherheitshalber. Bringt gar nichts - schadet eher durch Vorgaukelung überlegter Programmierung.

Bug 2) Wenn doch schon klar ist, dass sich mindestens ein Punkt im (Ordner-)Gesamt-Namen befindet - wie nennt M$ die auf den letzten Punkt folgende Zeichenfolge? Richtig: Extension. Und das vor dem letzten Punkt ist der Name.
Also kommt bei meinem "Hol mir den Namen des jüngsten "??.??.????"-Verzeichnisses" heraus:
Beim Verzeichnis "28.03.2008" als Name [%%~ni]:------------> [28.03]
Bug 3) Und es kann Montags immer schlimmer kommen: Auch ein eventuell vorhandenes Verzeichnis, das nur aus ein oder zwei Zeichen besteht entspricht der vermeintlichen Genauigkeit der Suchmaske "??.??.????".
Wenn also zufällig im "Sicherungs-Root", also bei Dir auf Laufwerk D:, zwei Verzeichnisse angelegt werden mit...
md zB
md x
dann erwische ich die auch mit einem 'dir /ad '??.??.????'.

Der langen Schreibe kurzer Schluss:
  • Ersetze die buggybuggybuggy-Zeile
[STREICHE] For %%f %%i in ('dir /aD /o-d /b d:\??.??.????') do set "LastDaSiDir=%%~ni"
durch
[SETZE] For /f %%i in ('dir /aD /o-d /b d:\??.??.20??') do set "LastDaSiDir=%%~nxi"

Mit der Dateimaske "??.??.20??" unterstelle ich, dass Du mit den Datensicherungen jetzt anfängst, also 2008 oder so.
Und dass auch Du spätestens im Jahre 2100 keinen Wert mehr auf Archivierung Deiner Computerdaten legst.

Na ja, wahrscheinlich muss sich dann niemand von uns mehr mit M$-Programmen rumbalgen.
Weil M$ in 90 Jahren bestimmt Software zur Spracherkennung von Nicht-US-englischen Dialekten entwickelt hat..*ggg
..... ihre M$KB-Seiten übersetzen die ja jetzt schon....wohin auch immer....

Grüße und schönen Restmontag
Biber
Member: bastla
bastla Mar 31, 2008 at 18:23:57 (UTC)
Goto Top
@Biber

Schade eigentlich - ich fand die Maske eine gute Idee (muss aber leider zugeben, dann auch nicht mehr getestet zu haben).

Den Bug 2) habe ich durch präventive Ungenauigkeit vermieden ...

Grüße
bastla

P.S.: Falls Du ein "-" vermisst - das habe ich ... face-wink
[Edit] Wie ich sehe, hattest Du noch eines vorrätig ... [/Edit]
Member: Exzel
Exzel Apr 06, 2008 at 18:21:07 (UTC)
Goto Top
Hallo nochmal und sorry für die späte Rückmeldung,

leider funktioniert das immer noch nicht genau.

Die letzte Sicherung liegt im Ordner

27.03.2008 Änderungdatum ist der 31.03.2008


Die Lösung von Biber (heute) AnzTage=76
Die Lösung von Bastla (heute) 69 Tage

Wenn ihr wollte kann ich euch die Screenshots zuschicken. Leider habe ich keine Möglichkeit gefunden hier Bilder in die Threads einzubinden.


Bitte um Hilfe!

Danke!
Member: bastla
bastla Apr 06, 2008 at 21:41:30 (UTC)
Goto Top
Hallo Exzel!

Noch ein Versuch:
@echo off & setlocal
set "Sich=D:\??.??.20??"  

for /f "delims=" %%i in ('dir /b /ad /od /tc "%Sich%"') do set "Zuletzt=%%i"  
set DD=%temp%\DateDiff.vbs
echo WScript.Echo DateDiff("d",WScript.Arguments(0),Now)>%DD%  
for /f %%i in ('cscript //nologo %DD% %Zuletzt%') do set /a Tage=%%i  

echo Alter der letzten Sicherung: %Tage% Tage
if %Tage% geq 7 echo Sicherung erforderlich

Sollte auch das nicht zum gewünschten Ergebnis führen, könntest Du einmal mit "Start / Ausführen..." und der Eingabe von "cmd" zur Kommandozeile gehen und dort den Befehl
dir /od /tc D:\Sicherungen\??.??.20??
ausführen. Der Laufwerksbuchstabe ist natürlich, so wie auch im Batch oben, anzupassen. face-wink

Um das ausgegebene Inhaltsverzeichnis posten zu können, empfiehlt es sich, im CMD-Fenster auf die linke obere Ecke zu klicken, im erscheinenden Menü "Eigenschaften" zu wählen und dort im Register "Optionen" den "QuickEdit-Modus" zu aktivieren.

Nach "OK" und der Auswahl, die Eigenschaften "... für alle Fenster mit gleichem Namen" zu übernehmen, kannst Du bequem mit der Maus im CMD-Fenster kopieren und einfügen - dazu mit der linken Maustaste markieren und durch Rechtsklick kopieren (wenn nichts markiert ist, bewirkt ein Rechtsklick das Einfügen aus der Zwischenablage).

Kopiere bitte das gesamte Ergebnis des "dir"-Befehles und poste es zusammen mit der Ausgabe eines zweiten "dir"-Befehles, bei welchem Du das "/tc" weg und den Rest gleich lässt (mit der "Pfeil-nach-oben"-Taste kannst Du den vorigen Befehl nochmals aufrufen und auch vor dem erneuten Ausführen bearbeiten).

Grüße
bastla
Member: Exzel
Exzel Apr 07, 2008 at 13:08:09 (UTC)
Goto Top
Hallo und danke für deine Geduld,

hier die Ausgaben.


D:\>dir /od /tc D:\??.??.20??
Datenträger in Laufwerk D: ist USER_DATA
Volumeseriennummer: 8007-B192

Verzeichnis von D:\

08.02.2008 15:30 <DIR> 08.02.2008
22.02.2008 15:30 <DIR> 22.02.2008
29.02.2008 15:30 <DIR> 29.02.2008
04.03.2008 09:52 <DIR> 04.03.2008
07.03.2008 10:32 <DIR> 07.03.2008
20.03.2008 09:46 <DIR> 20.03.2008
25.03.2008 10:05 <DIR> 25.03.2008
31.03.2008 09:56 <DIR> 11.03.2008
31.03.2008 09:56 <DIR> 14.03.2008
31.03.2008 09:56 <DIR> 27.03.2008
31.03.2008 09:56 <DIR> 18.03.2008
31.03.2008 09:56 <DIR> 15.02.2008
0 Datei(en) 0 Bytes
12 Verzeichnis(se), 8.731.000.832 Bytes frei


D:\>dir /od D:\??.??.20??
Datenträger in Laufwerk D: ist USER_DATA
Volumeseriennummer: 8007-B192

Verzeichnis von D:\

08.02.2008 15:31 <DIR> 08.02.2008
22.02.2008 15:31 <DIR> 22.02.2008
29.02.2008 15:31 <DIR> 29.02.2008
04.03.2008 09:55 <DIR> 04.03.2008
07.03.2008 10:36 <DIR> 07.03.2008
20.03.2008 09:50 <DIR> 20.03.2008
25.03.2008 10:08 <DIR> 25.03.2008
31.03.2008 09:56 <DIR> 11.03.2008
31.03.2008 09:56 <DIR> 14.03.2008
31.03.2008 09:56 <DIR> 27.03.2008
31.03.2008 09:56 <DIR> 18.03.2008
31.03.2008 09:56 <DIR> 15.02.2008
0 Datei(en) 0 Bytes
12 Verzeichnis(se), 8.731.000.832 Bytes frei


Wenn es nun wirklich zu schwierig und zu aufwendig ist, den Ordner im Format dd.mm.yyyy zu speichern und es wesentlich einfacher ist yyyymmdd zu verwenden können wir auch mit diesem arbeiten. Müsste halt dann wissen, wie das Sicherungsscript aussehen müsste und mit welchem Befehl so ein Ordner angelegt wird.

Gruß
Member: bastla
bastla Apr 07, 2008 at 13:47:48 (UTC)
Goto Top
Hallo Exzel!

Wie Du an der Auflistung erkennen kannst, gilt auf Basis der Sortierung nach Erstellungs- und auch nach Änderungsdatum der Ordner "15.02.2008" als der neueste - daher wäre eine Sortierung nach dem Namen vorzuziehen, was sich am sinnvollsten über die Änderung der Datumsschreibweise erreichen lässt.

Dazu müsstest Du Dein
md %date%
zB ersetzen durch
set "Datum=%date:~-4%-%date:~-7,2%-%date:~-10,2%"  
"md D:\%Datum%"  
Als Ziel der Sicherung kannst Du dann ebenfalls "D:\%Datum%" angeben. Das resultierende Format wäre dann zB "2008-04-07".

Der Batch zur Auswertung:
@echo off & setlocal
set "Sich=D:\20??-??-*"  

for /f "tokens=1-3 delims=-" %%i in ('dir /b /ad /on "%Sich%"') do set "Zuletzt=%%k.%%j.%%i"  
set DD=%temp%\DateDiff.vbs
echo WScript.Echo DateDiff("d",WScript.Arguments(0),Now)>%DD%  
for /f %%i in ('cscript //nologo %DD% %Zuletzt%') do set /a Tage=%%i  

echo Alter der letzten Sicherung: %Tage% Tage
if %Tage% geq 7 echo Sicherung erforderlich

Grüße
bastla
Member: Exzel
Exzel Apr 17, 2008 at 09:54:07 (UTC)
Goto Top
Hallo nochmal,

nach langem Probieren ist es nun endlich vollbracht. Hier das fertige Script.

@echo off & setlocal

if exist "D:\%date:~6%*" goto Intervall  
if not exist "D:\%date:~6%*" goto Sicherung  


:Intervall
set "Sich=D:\20??-??-*"  
for /f "tokens=1-3 delims=-" %%i in ('dir /b /ad /on "%Sich%"') do set "Zuletzt=%%k.%%j.%%i"  
set DD=%temp%\DateDiff.vbs
echo WScript.Echo DateDiff("d",WScript.Arguments(0),Now)>%DD%  
for /f %%i in ('cscript //nologo %DD% %Zuletzt%') do set /a Tage=%%i  
echo Alter der letzten Sicherung: %Tage% Tage
if %Tage% geq 7 goto Sicherung
exit


:Sicherung
set "date=%date:~-4%-%date:~-7,2%-%date:~-10,2%"  
md D:\%date%
echo Sicherung wird durchgefuehrt
echo Dieses Fenster schliesst nach der Sicherung automatisch
set xlog=D:\ergebnis.txt
@echo ---------------- Beginn copy %date% %time% -------------- > %xlog% 
xcopy "c:\ZU_SICHERENDES_VERZEICHNIS" "d:\%date%\" /e /h /V >> %xlog%  
@echo ---------------- Ende copy %date% %time% ------------

Dieses Script führt also nach spätestens 7 Tagen eine Sicherung durch. Die Protokollierung erfolgt in der Datei ergebnis.txt. Die Sicherungsverzeichnisse werden nach dem Schema JJJJ-MM-TT angelegt. Beispiel 2008-04-17. Anfangs wird überprüft, ob so ein Sicherungsverzeichnis überhaupt schon einmal angelegt ist. Wenn ja, wird die Differenz zwischen dem letzten Sicherungstag (der aus dem Ordnernamen hervorgeht) und dem heutigen berechnet. Sollte diese Differenz größer als sieben sein wird die Sicherung durchgeführt. Sollte diese kleiner sein, dann nicht. Wenn noch kein Sicherungsverzeichnis existiert wird eines neu angelegt. Dieses Script kann also in den Autostart gelegt und individuell angepasst werden.


VIELEN VIELEN VIELEN VIELEN DANK FÜR EURE HILFE! Hätte das alleine nur unter größten Anstrengungen vollbracht.

Gruß