Obtener información sobre el espacio en disco mediante PowerShell
- Obtener información sobre el espacio en disco mediante la biblioteca de PSDrive en PowerShell
- Obtener información sobre el espacio en disco mediante el objeto WMI en PowerShell
PowerShell puede generar informes completos sobre nuestros sistemas operativos Windows. Una de las métricas de estos informes es la lista de unidades de nuestro sistema y su información de espacio en la unidad.
En este artículo, aprenderemos un par de comandos que exportarán información en todas las unidades de nuestro sistema y aprenderemos a determinar cuánto espacio de disco queda en nuestra máquina usando PowerShell.
Obtener información sobre el espacio en disco mediante la biblioteca de PSDrive en PowerShell
La biblioteca PSDrive es un conjunto de comandos encargados de administrar, crear y eliminar unidades temporales y persistentes mediante PowerShell. Este primer método se centrará en el comando de consulta Get-PSDrive
.
Al ejecutar el comando Get-PSDrive
, podemos obtener rápidamente la información sobre todos nuestros repositorios montados en nuestro sistema.
Código de ejemplo:
Get-PSDrive
Producción :
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
Como hemos visto en el resultado anterior, el comando Get-PSDrive
tiene un atributo Nombre
en su objeto. Al conocer esta información, podemos aislar una unidad específica filtrando su nombre de unidad y seleccionando otro atributo de objeto para determinar su tamaño libre.
Ejecute el siguiente comando para probar esto.
Código de ejemplo:
Get-PSDrive -Name C | Select-Object Name, Free
Producción :
Name Free
---- ----
C 23061344256
Sin embargo, si comparamos nuestra última salida con la salida anterior, podemos ver que el tamaño libre se ha convertido en bytes. Por lo tanto, para reconvertir el valor a gigabytes (GB), debemos establecer una expresión personalizada al seleccionar el atributo del objeto.
Ejecute el siguiente comando para probar esto.
Código de ejemplo:
Get-PSDrive -Name C | Select-Object Name, @{Name = "Free (GB)"; Expression={[Math]::Round($_.Free/1GB,2)}}
Producción :
Name Free (GB)
---- ----
C 21.41
El código de ejemplo anterior cambia el nombre de la columna a Libre (GB)
y redondea la salida del valor flotante a dos decimales.
Obtener información sobre el espacio en disco mediante el objeto WMI en PowerShell
Otro método para obtener información sobre el espacio en disco es usar la clase de objeto WMI. Esta clase funciona de manera similar a PSDrive, pero la única diferencia es que esta biblioteca puede consultar equipos remotos.
Código de ejemplo:
Get-WmiObject Win32_LogicalDisk -Filter "DeviceID='C:'" | Select-Object DeviceID, @{Name = "Free (GB)"; Expression={[Math]::Round($_.FreeSpace/1GB,2)}}
Producción :
DeviceID Free (GB)
-------- ---------
C: 21.42
Para iniciar una consulta en una computadora remota, agregue el parámetro ComputerName
dentro del comando Get-WMIObject
.
Get-WmiObject Win32_LogicalDisk -ComputerName "REMOTE-PC" -Filter "DeviceID='C:'"
Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.
LinkedIn