Abrufen von Festplattenspeicherinformationen mit PowerShell

  1. Abrufen von Speicherplatzinformationen mithilfe der PSDrive-Bibliothek in PowerShell
  2. Abrufen von Speicherplatzinformationen mithilfe des WMI-Objekts in PowerShell
Abrufen von Festplattenspeicherinformationen mit PowerShell

PowerShell kann umfassende Berichte zu unseren Windows-Betriebssystemsystemen erstellen. Eine der Metriken in diesen Berichten ist die Liste unserer Systemlaufwerke und deren Speicherplatzinformationen.

In diesem Artikel lernen wir einige Befehle kennen, mit denen Informationen auf alle unsere Systemlaufwerke exportiert werden, und erfahren, wie Sie mithilfe von PowerShell ermitteln können, wie viel Speicherplatz auf unserem Computer verbleibt.

Abrufen von Speicherplatzinformationen mithilfe der PSDrive-Bibliothek in PowerShell

Die PSDrive-Bibliothek ist eine Reihe von Befehlen, die für das Verwalten, Erstellen und Löschen von temporären und dauerhaften Laufwerken mit PowerShell zuständig sind. Diese erste Methode konzentriert sich auf den Abfragebefehl Get-PSDrive.

Durch Ausführen des Befehls Get-PSDrive können wir schnell die Informationen zu allen unseren in unserem System bereitgestellten Repositories abrufen.

Beispielcode:

Get-PSDrive

Ausgabe:

Name           Used (GB)     Free (GB) Provider      Root                                               CurrentLocation
----           ---------     --------- --------      ----                                               ---------------
Alias                                  Alias
C                 442.84         21.56 FileSystem    C:\                                               Users\KentMarion
Cert                                   Certificate   \
D                3507.38        218.63 FileSystem    D:\
Env                                    Environment
Function                               Function
G                 519.22        412.28 FileSystem    G:\
HKCU                                   Registry      HKEY_CURRENT_USER
HKLM                                   Registry      HKEY_LOCAL_MACHINE
Variable                               Variable
WSMan                                  WSMan

Wie wir aus der obigen Ausgabe gesehen haben, hat der Befehl Get-PSDrive ein Name-Attribut in seinem Objekt. Wenn wir diese Informationen kennen, können wir ein bestimmtes Laufwerk isolieren, indem wir seinen Laufwerksnamen filtern und ein anderes Objektattribut auswählen, um seine freie Größe zu bestimmen.

Führen Sie den folgenden Befehl aus, um dies zu testen.

Beispielcode:

Get-PSDrive -Name C | Select-Object Name, Free

Ausgabe:

Name        Free
----        ----
C    23061344256

Vergleichen wir jedoch unsere letzte Ausgabe mit der Ausgabe vorher, sehen wir, dass sich die freie Größe in Bytes umgerechnet hat. Um den Wert wieder in Gigabyte (GB) umzuwandeln, müssen wir daher bei der Auswahl des Objektattributs einen benutzerdefinierten Ausdruck festlegen.

Führen Sie den folgenden Befehl aus, um dies zu testen.

Beispielcode:

Get-PSDrive -Name C | Select-Object Name, @{Name = "Free (GB)"; Expression={[Math]::Round($_.Free/1GB,2)}}

Ausgabe:

Name        Free (GB)
----        ----
C           21.41

Der obige Beispielcode benennt die Spalte in Free (GB) um und rundet die Ausgabe des Gleitkommawerts auf zwei Dezimalstellen.

Abrufen von Speicherplatzinformationen mithilfe des WMI-Objekts in PowerShell

Eine andere Methode zum Abrufen von Speicherplatzinformationen ist die Verwendung der WMI-Objektklasse. Diese Klasse funktioniert ähnlich wie PSDrive, aber der einzige Unterschied besteht darin, dass diese Bibliothek Remotecomputer abfragen kann.

Beispielcode:

Get-WmiObject Win32_LogicalDisk -Filter "DeviceID='C:'" | Select-Object DeviceID, @{Name = "Free (GB)"; Expression={[Math]::Round($_.FreeSpace/1GB,2)}}

Ausgabe:

DeviceID Free (GB)
-------- ---------
C:           21.42

Um eine Abfrage auf einem Remote-Computer zu initiieren, fügen Sie den Parameter ComputerName innerhalb des Befehls Get-WMIObject hinzu.

Get-WmiObject Win32_LogicalDisk -ComputerName "REMOTE-PC" -Filter "DeviceID='C:'"
Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn