MS Tool "forfiles"
Hi,
verstehe ich es bloß nicht oder ist die Option "/D +dd" des MS Tools "forfiles" total sinnfrei?
Wenn ich mit forfiles alle Dateien haben will, welche innerhalb der letzten 30 Tage geändert wurden, wie gehe ich da vor?
Der von mir fett markierte Teil beschreibt ein Datum in der Zukunft. Der Teil mit dem (-) liefert nur Dateien mit einem Datum kleiner als "heute -x Tage", also welche nicht innerhalb der letzten x Tage geändert wurden.
E.
verstehe ich es bloß nicht oder ist die Option "/D +dd" des MS Tools "forfiles" total sinnfrei?
/D.....Datum......Wählt Dateien mit einem Änderungsdatum größer oder gleich (+), oder weniger oder gleich (-), das angegebene Datum mit Format dd.MM.yyyy"; oder wählt Dateien, dessen letztes Änderungsdatum größer oder gleich (+) dem heutigen Datum plus "tt" Tagen oder oder weniger oder gleich (-) heute minus "tt" Tagen. Gültige Werte für "tt" sind Zahlen zwischen 0 und 32768. Ohne Angabe wird "+" standardmäßig verwendet.
Wenn ich mit forfiles alle Dateien haben will, welche innerhalb der letzten 30 Tage geändert wurden, wie gehe ich da vor?
Der von mir fett markierte Teil beschreibt ein Datum in der Zukunft. Der Teil mit dem (-) liefert nur Dateien mit einem Datum kleiner als "heute -x Tage", also welche nicht innerhalb der letzten x Tage geändert wurden.
E.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 328588
Url: https://administrator.de/forum/ms-tool-forfiles-328588.html
Ausgedruckt am: 06.04.2025 um 14:04 Uhr
3 Kommentare
Neuester Kommentar

Beispiele:
Für dein Vorhaben wäre hier nur die Angabe eines Datums passend
passend, jedoch inklusive Dateien die ein Datum in der Zukunft haben (warum auch immer das vorkommen mag).
Ich würde Powershell empfehlen
Gruß
Alle Dateien die älter als dem Datum (Heute-10) Tage sind (<=27.01.2017)
forfiles /D -10
Alle Dateien die nach Heute+10 Tage bearbeitet wurden (>= 16.02.2017)
forfiles /D 10
Alle Dateien die älter/gleich dem 04.02.2017 sind (<=04.02.2017)
forfiles /D -04.02.2017
Alle Dateien die neuer/gleich dem 04.02.2017 sind (>=04.02.2017)
forfiles /D 04.02.2017
Für dein Vorhaben wäre hier nur die Angabe eines Datums passend
forfiles /D 07.01.2017
Ich würde Powershell empfehlen
gci 'C:\Ordner' -File | ?{$_.LastWriteTime -ge (get-date).AddDays(-30)}

Ja nee, das ist schon klar da musst du natürlich eine Routine davor setzen die das Datum in der Batch vorher berechnet, das ist problemlos möglich, sind aber in Batch diverse Zeilen mehr
.