member Geschrieben 3. August 2017 Geschrieben 3. August 2017 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 Zitieren
lessbess Geschrieben 3. August 2017 Geschrieben 3. August 2017 (bearbeitet) 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 2017 von lessbess Zitieren
alexanderbrix Geschrieben 3. August 2017 Geschrieben 3. August 2017 (bearbeitet) $exlude=@("folder1", "Folder2") // $exclude=@("folder1", "Folder2") Bearbeitet 3. August 2017 von alexanderbrix Zitieren
member Geschrieben 3. August 2017 Autor Geschrieben 3. August 2017 vor 2 Minuten schrieb alexanderbrix: $exlude=@("folder1", "Folder2") // $exclude=@("folder1", "Folder2") oh... Aber im richtigen Script habe ich es richtig geschrieben, nur hier nicht Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.