Powershell Get-ChildItem,Where-Object: Wie Exclude-Ordner,Notlike definieren?
Hallo,
ich hätte gerne eine Liste aller Dateien, die ab dem 8.11.24 in Laufwerk c:\ geschrieben wurden, jedoch NICHT in den Ordnern (und darunter) der Pfade "c:\Windows\*" sowie "C:\Program Files (x86)\*":
Die Exclude-Option bei Get-ChildItem wird leider nicht berücksichtigt:
Auch der Ausschluss im Where-Object-Bereich klappt nicht:
Was mache ich falsch?
ich hätte gerne eine Liste aller Dateien, die ab dem 8.11.24 in Laufwerk c:\ geschrieben wurden, jedoch NICHT in den Ordnern (und darunter) der Pfade "c:\Windows\*" sowie "C:\Program Files (x86)\*":
Die Exclude-Option bei Get-ChildItem wird leider nicht berücksichtigt:
Get-ChildItem -Path C:\ -Recurse -Exclude ('C:\Windows\*','C:\Program Files (x86)\*') -File | Where-Object { $_.LastWriteTime -gt '2024-11-07' }
Auch der Ausschluss im Where-Object-Bereich klappt nicht:
Get-ChildItem -Path C:\ -Recurse -File | Where-Object { $_.LastWriteTime -gt '2024-11-07' } | Where-Object { $_.Fullname -notlike ('C:\Windows\*','C:\Program Files (x86)\*') } | Foreach-Object { $_.Fullname }
Was mache ich falsch?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 669727
Url: https://administrator.de/contentid/669727
Ausgedruckt am: 24.11.2024 um 14:11 Uhr
2 Kommentare
Neuester Kommentar
$d = get-date '2024-11-08'
Get-ChildItem -Path C:\ -Recurse -File -EA SilentlyContinue | ?{$_.LastWriteTime -ge $d -and $_.Fullname -notmatch '^C:\\(Windows|Program Files \(x86\))\\'} | % Fullname
Oder andere Methode
$d = get-date '2024-11-08'
Get-ChildItem -Path C:\ -Directory -Exclude "Windows","Program Files (x86)" | Get-ChildItem -Recurse -File -EA SilentlyContinue | ?{ $_.LastWriteTime -ge $d} | % Fullname