Powershell-Skript zum Auflisten von Ordnern in allen Freigaben

Powershell-Skript zum Auflisten von Ordnern in allen Freigaben

Dumme Frage, aber ich bin nicht sicher, ob das möglich ist.

Ich habe einen Dateiserver, auf dem 8 separate Freigaben gehostet werden. Ich suchte nach einem Skript, um eine Liste der Ordnernamen (keine Unterordner) für alle Freigaben abzurufen.

ich kann nutzenGet-ChildItem -path "\server1\share1*" | Wobei {$_.PsIsContainer}um die Ordner einer bestimmten Freigabe aufzulisten, aber ich versuche, eine Möglichkeit zu finden, einfach den Serverpfad zu verwenden, um alle Freigaben und Ordner gleichzeitig aufzulisten.

Besteht die einzige Möglichkeit, das Skript für jede Freigabe einzeln auszuführen?

Antwort1

Get-WmiObject -Query "SELECT Name, Path FROM Win32_Share" | Format-Table Name, Path

Antwort2

Es hört sich an, als ob Sie den Parameter -recurse für Get-Childitem benötigen. Dadurch werden die Inhalte aller darunterliegenden Ordner (und auch deren Inhalte) aufgelistet. Wenn jedoch viele Ordner vorhanden sind, kann dies unhandlich werden.

Eine weitere Möglichkeit besteht darin, Platzhalter (*) zu verwenden.

Get-Childitem -path "\server1\*\*"

Dadurch werden alle Ordner in „\server1“ und dann alle Ordner in diesen Ordnern durchsucht. Wenn Sie tiefer gehen möchten (Richtung!), können Sie einfach weitere „*“ hinzufügen.

verwandte Informationen