Ich habe eine Reihe von VerzeichnissenSuche mehrere Ordner zu überprüfen, ob sie leer sind mithilfe von Powershell
C: \ RI1
C: \ RI2
C: \ RI3
.. . C: \ RI21
Wie kann ich überprüfen, ob sie alle leer sind? Ich möchte nur weiter in das Skript gehen, wenn eines oder mehrere von ihnen Dateien haben. Wenn nicht, möchte ich beenden. Ich habe versucht, dies ist aber für Ordnernamen gesucht und gibt mir 21 als Antwort
$directoryInfo = Get-ChildItem C:\RI* | Measure-Object
$directoryInfo.count
if ($directoryInfo.count -eq 0)
{
Write-host "Empty"
}
else
{
Write-host "Not Empty"
}
Problem ist, können sie weitere Ordner hinzufügen und die Ordner hinzugefügt wird nicht in unseren Händen. Alles was wir wissen ist, dass es mit RI beginnen würde. Gibt es eine Möglichkeit, die Schleife mithilfe eines Platzhalters auszuführen, ohne den Ordnernamen explizit anzugeben? –
Dann müssen Sie auch alle Ordner in C: \, wo der Name Ihren Anforderungen entspricht. '$ folders = Get-ChildItem C: \ | ? {$ _. PSIsContainer} | wo {$ _. name.StartsWith ("RI")} ' – David
Wow - Wenn das der einzige Weg ist, muss ich denken, dass ich verloren bin. Benötigt viel Zeit für die Ausführung des Skripts. Vielen Dank für die Hilfe David! –