Powershell afficher l'état du système sous forme de table

Le 11 septembre 2022
windows powershell

Exemple de script PowerShell qui affiche l’état du système sous forme de table avec des informations sur la RAM, le processeur, les disques durs et les interfaces réseau :

powershell
1
2
3
4
5
6
7
8
9
10
11
12
13
$ram = Get-WmiObject -Class Win32_OperatingSystem | Select-Object @{Name='TotalMemory';Expression={$_.TotalVisibleMemorySize / 1MB -as [int]}} 
$cpu = Get-WmiObject -Class Win32_Processor | Select-Object Name, NumberOfCores 
$disk = Get-WmiObject -Class Win32_LogicalDisk | Select-Object DeviceID, Size, FreeSpace 
$network = Get-WmiObject -Class Win32_NetworkAdapterConfiguration | Where-Object {$_.IPEnabled} | Select-Object Description, IPAddress

$table = @{
    'RAM' = "$($ram.TotalMemory) MB"
    'Processor' = "$($cpu.Name) with $($cpu.NumberOfCores) cores"
    'Disks' = $disk | ForEach-Object { $_.DeviceID + " $($_.Size / 1GB -as [int]) GB ($($_.FreeSpace / $_.Size * 100 -as [int])% free)" } 
    'Network Interfaces' = $network | ForEach-Object { $_.Description + " with IP address(es): $($_.IPAddress -join ', ')" }
}

$table | Format-Table -AutoSize

Ce script utilise les cmdlets WMI de PowerShell pour récupérer les informations sur le système. Il crée ensuite trois tables distinctes pour les informations sur le système, les disques durs et les interfaces réseau, qui sont ensuite affichées dans la console sous forme de table grâce à la cmdlet Format-Table. Les tables sont triées par ordre alphabétique pour plus de clarté.

Pour l’exécuter, vous pouvez simplement enregistrer le script dans un fichier avec l’extension .ps1 et l’exécuter dans une console PowerShell en tant qu’administrateur.