Korzystając z PowerShell, możesz użyć następującego polecenia:
Get-WmiObject -Class win32_logicalDisk -ComputerName server1, server2, server3, etc | Select-Object pscomputername, deviceid, freespace, size
Zastąp server1, server2 itp. Zdalnymi nazwami serwerów lub adresami IP.
Dane wyjściowe wyglądają następująco:
Jeśli chcesz, możesz dodać | Export-Csv -Path .\drives.csv
na końcu skryptu, aby wyprowadzić plik do pliku wartości rozdzielanej przecinkami (CSV) do użycia z programem Excel. Jeśli tak, po otwarciu programu Excel należy sformatować kolumny rozmiaru dysku w programie Excel jako liczby.
Tylko na chichoty napisałem ten skrypt PowerShell, który wykona zadanie na wszystkich serwerach w Active Directory:
$ErrorActionPreference= 'silentlycontinue'
Get-ADComputer -Filter 'OperatingSystem -like "*Server*"' -Properties * | Select-Object Name |
ForEach-Object {
If (Test-Connection $_.Name -Count 1){
Get-WmiObject -Class win32_logicalDisk -ComputerName $_.Name |
Select-Object pscomputername, deviceid, freespace, size
}
else {
Write-host $_.Name " Connection Error"
}
}