3
janvier
2012
Remonter les informations de capacité des disques avec Powershell (partie 2)
janvier
2012
Un article de Ptit_Dje
Pas de commentaires
Suite à l’article précédent, j’ai continué mes recherches, spécialement pour pouvoir bénéficier de la commande export-csv…
Au passage, ajout de propriétés calculées et chargement direct du fichier d’input, ce qui permet d’écrire le script en une seule ligne (je l’ai splitée par question de lisibilité…):
#CSV format based on server list file
Get-WmiObject win32_volume -Filter "drivetype=3" -computername @(get-content "C:\Powershell\Disks\ServerList.txt") `
| Add-Member -MemberType ScriptProperty -Name FreeSpaceinGB -Value {[math]::Round(($this.freespace / 1GB),2)} -PassThru `
| Add-Member -MemberType ScriptProperty -Name UsedSpaceinGB -Value {[math]::Round((($this.capacity - $this.freespace) / 1GB),2)} -PassThru `
| Add-Member -MemberType ScriptProperty -Name SizeinGB -Value {[math]::Round(($this.capacity / 1GB),2)} -PassThru `
| Add-Member -MemberType ScriptProperty -Name FreespacePercent -Value {[math]::Round(([int64]$this.freespace / [int64]$this.capacity * 100),2)} -PassThru `
| select __SERVER, Name, FreespaceinGB, UsedSpaceinGB, SizeinGB, FreespacePercent, BlockSize `
| export-csv "C:\Powershell\Disks\list.csv"
Get-WmiObject win32_volume -Filter "drivetype=3" -computername @(get-content "C:\Powershell\Disks\ServerList.txt") `
| Add-Member -MemberType ScriptProperty -Name FreeSpaceinGB -Value {[math]::Round(($this.freespace / 1GB),2)} -PassThru `
| Add-Member -MemberType ScriptProperty -Name UsedSpaceinGB -Value {[math]::Round((($this.capacity - $this.freespace) / 1GB),2)} -PassThru `
| Add-Member -MemberType ScriptProperty -Name SizeinGB -Value {[math]::Round(($this.capacity / 1GB),2)} -PassThru `
| Add-Member -MemberType ScriptProperty -Name FreespacePercent -Value {[math]::Round(([int64]$this.freespace / [int64]$this.capacity * 100),2)} -PassThru `
| select __SERVER, Name, FreespaceinGB, UsedSpaceinGB, SizeinGB, FreespacePercent, BlockSize `
| export-csv "C:\Powershell\Disks\list.csv"