TP 2 : Trouver les 5 processus qui consomment le plus de RAM, triés et formatés

Sophie repose un ticket sur votre bureau, presque identique à un vrai signalement reçu la veille par le support : « Le serveur RDS de l’étage 3 rame. Avant d’aller plus loin, donne-moi les 5 processus qui bouffent le plus de mémoire, avec leur nom et la RAM en Mo — pas en octets, ce n’est pas lisible. »

Objectif

Utiliser uniquement Get-Process, Sort-Object, Select-Object et une propriété calculée pour produire un résultat propre et directement lisible par Sophie.

Consignes

Étape 1 — Récupérez tous les processus, triés par mémoire utilisée (WS), du plus gourmand au moins gourmand.
Indice : revoyez la leçon 2.4, section « Sort-Object ».

Étape 2 — Ne gardez que les 5 premiers.
Indice : un seul mot-clé de Select-Object suffit.

Étape 3 — La propriété WS est en octets. Affichez-la en mégaoctets, arrondie à 1 décimale, dans une colonne nommée RAM_Mo.
Indice : Select-Object accepte des propriétés calculées, sous la forme @{Name="NomColonne"; Expression={ calcul }}. Par exemple :

@{Name="Taille_Ko"; Expression={ $_.Length / 1KB }}

Étape 4 — N’affichez au final que le nom du processus et cette colonne RAM_Mo.

Étape 5 (bonus) — Sophie veut la même chose, mais uniquement pour les processus dépassant 200 Mo, sans limite de nombre cette fois.
Indice : quelle cmdlet de la leçon 2.4 permet de filtrer selon une condition, plutôt que de limiter un nombre de lignes ?

Solution commentée