none
Vergleich mit Daten älter x Tage schließt seit 01.10.2018 aktuelle Daten mit ein RRS feed

  • Frage

  • Hallo zusammen,

    ich hab hier ein kleines Verständnisproblem.
    Ich möchte Daten älter x Tage löschen.

    Dazu suche ich folgendermaßen nach entsprechenden Datein:
    Get-ChildItem -Path $BLIBLABLUBB -Filter '*.bak'  | Where-Object {$_.LastWriteTime.ToShortDateString() -lt (Get-Date).AddDays(-6).ToShortDateString() }
    Hier sollen alle Daten älter 6 Tage selektiert werden.
    Das lief auch die letzten Tage so wie es sollte. Seit dem Monatswechsel schließt die Selektion allerdings auch aktuelle Daten mit ein. Ich vermute es liegt am Format des Datums. Hat allerdings jemand eine genaue Erklärung dafür?
    Das wäre super! :)

    LG
    F.
    Dienstag, 2. Oktober 2018 07:40

Antworten

  • Hallo,

    wenn man Datumswerte vergleichen will, sollte man sie NIEMALS vorher in Strings umwandeln. Danach werden sie als String behandelt und werden alphabetisch sortiert.

    Das ist auch bei einfachen Zahlen so:

    "9" -lt "10"

    liefert $false.

    Lass das ToShortDateString() weg, dann sollte es gehen.

    Viele Grüße

    Christoph

    Dienstag, 2. Oktober 2018 08:11