Veröffentlicht 3. August 20178 j Hallo, ich habe folgendes Problem. Ich möchte gerne auf meiner NAS nach bestimmten Dateien via PowerShell suchen. Mein Laufwerk Y:\ hat verschiedene Unterordner, ich möchte alle Unterordner nach bestimmten Datei typen .nef & .jpg durchsuchen dabei möchte ich aber nur Dateien ausgeben die größer sind als 100MB. Des Weiteren sollen zwei Ordner auf dem Y:\ Laufwerk von der Suche ausgeschlossen werden. Soweit funktioniert das auch, allerdings werden die zwei Ordner die ich ausschließen möchte nicht berücksichtigt. Kann mir jemand helfen? In diesem beispiel hole ich mir erstmal mit alle unterordner mit "gci" anschließend werden diese in die variable "folders" gepackt. exclude funktioniert leider so nicht... cd Y:\ $folders=gci $exlude=@("folder1", "Folder2") $files=@("*.nef","*.jpg") Get-ChildItem -Path ($folders) -r -include ($files) (where-object {$_.length -gt 100mb -and ($_.FullName -notlike $exclude)} |select length) | Sort-Object length | ft fullname, length -AutoSize
3. August 20178 j Ja, exclude filtert nur auf Blattlevel, funktioniert also nicht, wenn man Ordner und deren Unterordner ausschliessen will. Dein Ansatz sollte eigentlich schon fast funktionieren, du musst halt auch Wildcards benutzen, sonst filtert notlike nur genau diese Namen heraus. Du kannst es auch mit notmatch und dann Regex versuchen. Bearbeitet 3. August 20178 j von lessbess
3. August 20178 j $exlude=@("folder1", "Folder2") // $exclude=@("folder1", "Folder2") Bearbeitet 3. August 20178 j von alexanderbrix
3. August 20178 j Autor vor 2 Minuten schrieb alexanderbrix: $exlude=@("folder1", "Folder2") // $exclude=@("folder1", "Folder2") oh... Aber im richtigen Script habe ich es richtig geschrieben, nur hier nicht
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.