Hallo,
ich habe folgendes Problem. Ich möchte mit einer Batch Datei Daten sichern die sich in einem bestimmten Zeitraum befinden (z.B. von 1. Sept.2011 - 15. Sept.2011).
Mein Quellcode bis jetzt:
@echo off
XCOPY c:\test I:\testcopy /d:05-16-11 /S /E /V
pause
Aber es Sichert eben nur die Dateien ab dem 16.05.2011 bis jetzt.
Würde mich auf eine schnelle Antwort freuen!
mfg
Moin moin,
Hallo,
ich habe folgendes Problem. Ich möchte mit einer Batch Datei
Daten sichern die sich in einem bestimmten Zeitraum befinden
(z.B. von 1. Sept.2011 - 15. Sept.2011).
Mein Quellcode bis jetzt:
@echo off
wie siehts mit einem FOR aus
FOR /L %%A IN (1,1,15) DO (XCOPY c:\test I:\testcopy /d:05-%%A-11 /S /E /V)
ungetestet 
pause
Thomas Punkt.
Danke, könntest du das vielleicht noch kurz Erklären.
Das ist mir unklar: /L %%A IN (1,1,15)
und die Datumangabe hier: /d:05-%%A-11
Danke, könntest du das vielleicht noch kurz Erklären.
Das ist mir unklar: /L %%A IN (1,1,15)
ruf mal die Hilfe auf
FOR /?
bei Parameter /L findest du die Logik
FOR /L %variable IN (start,schritt,ende) DO Befehl
und die Datumangabe hier: /d:05-%%A-11
soll ersetzt werden durch 1 bis 15 , das was auch /L halt folgt
bei batch muss man stat %a %%a nehmen.
und die Datumangabe hier: /d:05-%%A-11
hmm , nun die frage, muss die tag angabe kleiner 10 mit führender 0 geschehen ?
Ach ok jetzt wird es mir klarer, Danke dir.
Der Tag wird immer eins hochgezählt, in der angegebenen Schrittweise.
Soweit ich weiss muss die Tag Angabe mit führender 0 sein.
Ich habe die For mal getestet und sie lief ohne Fehler, ich änder sie eben mal auf meine Daten ab ob die richtigen Daten gesichert werden.
Also ich habe es eben mit dem Monat Februar getestet.
@echo on
FOR /L %%A IN (1,1,28) DO (XCOPY c:\test c:\testcopy /d:02-%%A-11 /S /E /V)
pause
Wie du schon befürchtest hatte beginnt er mit dem Datum 02-1-11, ohne eine Null. Es wird also mehr gesichert als verlangt -.-
Ach ich hab ganz vergessen das der xcopy parameter blöd angelegt ist, es ist immer ab Datum und alle danach .
Da ist es dann ja eh wieder egal welchen tag es einträgt , es nimmt eh alles von da bis heute .
Also vergessen wir das ganze mit dem FOR , denn XCOPY lässt es nicht zu , egal was man als parameter übergibt.
Gug mal bei
„robocopy c:\ d:\sicherung /s /minage:20090101“
nach
ob man da auch ein maxage mitgeben kann 
jo gibt sogar maxage
also sollte
robocopy c:\ d:\sicherung /s /minage:20110501 /maxage:20110515
das sein was du willst um die ersten 15 tage vom monat 05 zu bekommen
1 „Gefällt mir“
Danke, ich teste es morgen mal und gebe dir Bescheid ob es geklappt hat =)
Es hat erfolgreich mit meinen Testdateien geklappt =) Danke nochmal!
@echo off
robocopy C:\test C:\testcopy /minage:20101030 /maxage:20101001 /S /E
pause
Gesichert werden alle Dateien die seit 01.10.2010 und bis zum 30.10.2010 verändert oder erstellt worden sind.