Gibt es einen PowerShell-Befehl, der einen bestimmten Pfad durchlaufen kann, um Verzeichnisse zu finden, die größer als n sind? Ich weiß, ich kann Dateien größer als n Größe finden, aber ich muss Verzeichnis Größe überprüfen, da gibt es Situationen, wo in einem Ordner gibt es 1000 Dateien, jeder von 1 MB, so die Summe des Verzeichnisses ist 1 GB. Und das geschah unter C: \ Windows.Suchverzeichnis größer als n Größe
0
A
Antwort
1
Die Powershell-Cmdlets akkumulieren nicht die Größen von verschachtelten Elementen in einem Verzeichnis, aber Sie können das FileSystemObject
COM-Objekt für diesen Einsatz:
$threshold = 1GB
$fso = New-Object -COM 'Scripting.FileSystemObject'
Get-ChildItem 'C:\root\folder' -Recurse -Directory | Where-Object {
$fso.GetFolder($_.FullName).Size -gt $threshold
}
Die -Directory
Parameter mit Powershell v3 eingeführt wurden. Wenn Sie dies für die Arbeit mit PowerShell v2 benötigen, müssen Sie Verzeichnisse mit einem Where-Object
Filter auswählen.
Get-ChildItem 'C:\root\folder' -Recurse | Where-Object {
$_.PSIsContainer -and
$fso.GetFolder($_.FullName).Size -gt $threshold
}
Verwandte Themen
- 1. Größer als n Array
- 2. Erhalten alle Indizes von Elementen größer als x in ndarray der Größe n * n Python
- 3. SQL Compact Datenbank größer als konfigurierte Größe
- 4. Keeping Canvas Größe größer als Fenster
- 5. Backup-Repository Größe ist viel größer als Indizes Größe
- 6. Größer als NamedSize.Large Text
- 7. Reaktive Programmierung - Wert ist größer als X für N Sekunden
- 8. Baum, Knoten mit Wert gerade größer als ein gegebenes n
- 9. Pandas groupby ein timedelta größer als N Minuten
- 10. Fortran Binärausgang größer als erwartet
- 11. Größe große Bilder in Python (größer als verfügbarer RAM)
- 12. Archivierte IPA-Größe für Appstore ist größer als Adhoc
- 13. Größe der 64-Bit-DLL 50% größer als 32-Bit
- 14. APK Größe ist größer als erwartet - Android Studio
- 15. java swing JFrame Größe kehrt Dimension größer als Bildschirm
- 16. finden Verzeichnisse mit einer Größe größer als x MB
- 17. UIImage Größe größer als das, was ich auf
- 18. Polsterung der Größe größer als 1 in Keras
- 19. Größer als die Größe eines bestimmten Bereichs postgres
- 20. Zugriff auf Array-Index größer als die Array-Größe
- 21. binäre Größe des kompilierten Git 4 mal größer als installiert
- 22. java.sql.SQLNonTransientConnectionException: org.apache.thrift.transport.TTransportException: Frame-Größe größer als maximale Länge (16384000)!
- 23. Ermitteln der Größe einer Datei größer als 4 GB
- 24. Wie Array von Größe größer als Integer max zu erstellen
- 25. warum Größe (y-Achse) von imread Bild größer als echtes
- 26. Datei heruntergeladen größer als Original
- 27. Android Studio: Wie Sie Dateien auflisten, deren Zeilenzahl größer als N ist, z. N = 400
- 28. Wie drucke ich die ersten n Bytes, wenn die Länge der Zeichenfolge größer als n ist?
- 29. Java Integer Vergleich: größer als
- 30. imageView ist größer als parrent
Danke, aber es ist ein bisschen seltsam. Können Sie mir sagen, welche Maßeinheit es benutzt? weil ich es getestet habe ... und für die $ threshold = 10000000 zeigt es mir sogar Verzeichnisse, die insgesamt 25 MB sind. – catalin
Die Einheit ist Bytes, Ihr Ergebnis ist also nicht überraschend, da 10.000.000 Bytes nur 10 MB groß sind, also weniger als 25 MB. Die Eigenschaft 'Size' sollte denselben Wert anzeigen, den Sie in Klammern sehen, wenn Sie das Eigenschaftendialogfeld eines Ordners öffnen. Sie können die [Bytekonvertierungskonstanten] von PowerShell (https://technet.microsoft.com/en-us/library/ee692684.aspx) verwenden, um den Schwellenwert lesbarer zu machen (z. B. $ threshold = 1GB). –
Es funktioniert nur für Powershell 3 oder höher. scheint auf 2 kann nicht enthalten -Directory Argument. Ist es möglich, etwas zu ändern, um auch mit powershell v2 arbeiten zu können? Vielen Dank! – catalin