Búsqueda de sitios web

Verifique el espacio libre en disco en Windows con el script de PowerShell


Queremos comprobar el espacio libre en disco en todos los sistemas Windows unidos a un dominio. Estos son los sistemas Windows Server y Windows 10. Una excelente manera de recuperar espacio en disco es con PowerShell. En este artículo, comprobaremos de forma masiva el espacio libre en disco con PowerShell para Windows Server, Windows 10 y Windows 11.

Preparar el script de PowerShell para comprobar el espacio libre en disco

Descargue el script Get-DiskSpaceReport.ps1 o copie y pegue el siguiente código en el Bloc de notas. Asígnale el nombre Get-DiskSpaceReport.ps1 y colócalo en la carpeta C:\scripts. Cree una carpeta scripts si no tiene una.

Set-ExecutionPolicy Unrestricted -Force
Import-Module ActiveDirectory

# Delete reports older than 60 days
$OldReports = (Get-Date).AddDays(-60)

# Location for disk reports
Get-ChildItem "C:\Temp\DiskSpaceReport\*.*" |
Where-Object { $_.LastWriteTime -le $OldReports } |
Remove-Item -Recurse -Force -ErrorAction SilentlyContinue

# Create variable for log date
$LogDate = get-date -f yyyyMMddhhmm

# Get all systems
$Systems = Get-ADComputer -Properties * -Filter { OperatingSystem -like "*Windows Server*" } |
Where-Object { $_.Enabled -eq $true } | Select-Object Name, DNSHostName | Sort-Object Name

# Loop through each system
$DiskReport = ForEach ($System in $Systems) {
    Get-WmiObject win32_logicaldisk `
        -ComputerName $System.DNSHostName -Filter "Drivetype=3" `
        -ErrorAction SilentlyContinue
}

# Create disk report
$DiskReport | Select-Object `
@{Label = "HostName"; Expression = { $_.SystemName } },
@{Label = "DriveLetter"; Expression = { $_.DeviceID } },
@{Label = "DriveName"; Expression = { $_.VolumeName } },
@{Label = "Total Capacity (GB)"; Expression = { "{0:N1}" -f ( $_.Size / 1gb) } },
@{Label = "Free Space (GB)"; Expression = { "{0:N1}" -f ( $_.Freespace / 1gb ) } },
@{Label = 'Free Space (%)'; Expression = { "{0:P0}" -f ($_.Freespace / $_.Size) } } |

# Export report to CSV file
Export-Csv -Path "C:\Temp\DiskSpaceReport\DiskReport_$logDate.csv" -NoTypeInformation -Delimiter ";"

Se verá así.

Cree una segunda carpeta con el nombre Temp y colóquela en la unidad (C:). Después de eso, cree una carpeta DiskSpaceReport y colóquela en la carpeta temporal. Ahí es donde se guardará el informe después de ejecutar el script.

¿Quieres cambiar la ruta del informe? Recuerde cambiar la ruta en el script PS en las líneas 8 y 36.

Antes de ejecutar el script de PowerShell Get-DiskSpaceReport

Antes de ejecutar el script, preste mucha atención a:

  • Los sistemas deben estar en línea.

  • Ejecútelo en una computadora unida a un dominio

  • Derechos de administrador

Espacio libre en disco Windows Server

Cambie la ruta a la carpeta de scripts. Ejecute el script de PowerShell Get-DiskSpaceReport.ps1. Recuperará todos los servidores Windows del dominio y exportará las unidades de disco a un archivo CSV.

PS C:\> cd C:\scripts

PS C:\scripts> .\Get-DiskSpaceReport.ps1

Abra el archivo CSV en C:\Temp\DiskSpaceReport. En este ejemplo, abrimos el archivo CSV con Microsoft Excel.

Servidores Windows específicos de espacio libre en disco

Suponga que desea exportar el espacio libre en disco para servidores Windows específicos. En lugar de ejecutar el script en todos los sistemas Windows en Active Directory, puede crear y utilizar una lista específica como entrada.

Cree un archivo CSV con el nombre ADComputers.csv en C:\Temp. Agregue el encabezado Hostname y agregue los nombres de host de los servidores Windows en cada línea.

En nuestro ejemplo, nos gusta exportar el espacio libre en disco en dos servidores Windows.

Reemplace línea 15 - línea 24 con el siguiente código.

# Import CSV file
$Servers = Import-Csv "C:\Temp\ADComputers.csv"

# Loop through each system
$DiskReport = ForEach ($Server in $Servers) {

    # Get system
    $System = Get-ADComputer $Server.Hostname | Where-Object { $_.Enabled -eq $true } | 
    Select-Object Name, DNSHostName | Sort-Object Name
    Get-WmiObject win32_logicaldisk `
        -ComputerName $System.DNSHostName -Filter "Drivetype=3" `
        -ErrorAction SilentlyContinue
}

Espacio libre en disco Windows 10

Si desea comprobar todo el espacio libre en disco en los clientes de Windows 10, debe obtener todos los clientes de Windows 10. Edite la línea 16 en el script PS para:

$Systems = Get-ADComputer -Properties * -Filter { OperatingSystem -like "*Windows 10*" } |

Ejecute el script de PowerShell y verifique el archivo CSV del informe del disco con su programa favorito. En este ejemplo, es la aplicación Microsoft Excel.

Espacio libre en disco Windows 11

Si desea comprobar todo el espacio libre en disco en los clientes de Windows 11, debe obtener todos los clientes de Windows 11. Edite la línea 16 en el script PS para:

$Systems = Get-ADComputer -Properties * -Filter { OperatingSystem -like "*Windows 11*" } |

Es fantástico tener todos los tamaños de disco de Windows en el entorno.

Nota: Utilice siempre software de supervisión en los sistemas para recibir una alerta cuando el espacio en disco se esté llenando. ¡El script no está disponible para reemplazar el software del sistema de monitoreo!

Como siempre, es importante tener un buen software de monitoreo ejecutándose en todos sus sistemas. Le avisará inmediatamente cuando, de repente, las unidades de disco estén llenas.

Leer más: Convierta un disco aprovisionado grueso en uno delgado en VMware ESXi »

Conclusión

Aprendió a comprobar el espacio libre en disco en Windows con PowerShell. Obtenga clientes de Windows Server, Windows 10 o Windows 11 unidos a un dominio de forma masiva y exporte el espacio en disco en un informe.

Utilice este script cuando desee comprobar el espacio libre en el disco y crear un informe. Por ejemplo, si vas a hablar con el cliente y explicarle por qué necesita comprar más discos. O lo que es útil es que puedes ver en el informe del disco cuánto espacio libre está asignado en los sistemas y tal vez no lo necesites. Esta es una excelente manera de ajustar el tamaño del volumen del disco y no desperdiciar espacio libre adicional.

Disfrutaste este artículo? También te pueden gustar las comillas triples de Excel CSV al guardar el archivo. No olvides seguirnos y compartir este artículo.

Artículos relacionados