Le tri des données ne devrait pas être une tâche accablante. Si vous recherchez un moyen efficace de trier des données, la commande Sort-Object
de PowerShell est là pour vous aider !
Dans ce tutoriel, vous apprendrez comment utiliser la commande Sort-Object
de PowerShell pour trier des données, que ce soient des nombres, des chaînes de caractères ou des objets.
Éliminez le besoin de regarder constamment vos données et triez-les efficacement dans PowerShell !
Prérequis
Assurez-vous d’avoir une machine avec PowerShell 5.0 ou une version ultérieure installée pour suivre ce tutoriel avec les démonstrations pratiques. Ce tutoriel utilise Windows 10 avec PowerShell 7 installé.
Trier des données avec la commande Sort-Object
de PowerShell
En fonction de vos besoins, vous pouvez trier des données en fonction d’une ou plusieurs propriétés de nombreuses manières. La commande Sort-Object
vous permet de trier des données, par exemple, dans l’ordre ascendant ou descendant pour faciliter l’analyse et le travail avec des informations structurées.
La syntaxe de base de la commande Sort-Object
est la suivante :
<Objet-à-trier>
– Fait référence à la collecte de données à trier, telles qu’un tableau, une liste ou d’autres types de données.<-Paramètre>
– Un paramètre facultatif pour spécifier les critères de tri qui vous permet de personnaliser la façon dont le tri est effectué.
Pour voir comment vous pouvez trier des données par ordre croissant et décroissant :
1. Ouvrez PowerShell et exécutez la commande ci-dessous, qui ne fournit pas de sortie mais définit une liste de nombres entiers aléatoires dans la variable $numbers
.
? Notez qu’en PowerShell, vous ne travaillez pas seulement avec des nombres et des chaînes, mais avec des objets, car PowerShell est un langage et un shell orienté objet.
2. Ensuite, exécutez les commandes suivantes pour trier (Sort-Objects
) et afficher (Write-Output
) les nombres définis dans la variable $numbers
.
Sans ajouter de paramètres, la sortie affiche les nombres par ordre croissant.

3. Maintenant, exécutez les mêmes commandes, mais cette fois, ajoutez le paramètre -Descending
pour trier et afficher les nombres par ordre décroissant.
Une sortie similaire à celle ci-dessous indique que les nombres ont été triés par ordre décroissant.

Tri des données par valeurs uniques
Trier les données par ordre croissant et décroissant est une chose. Mais il peut y avoir des cas où vous devez trier les données en fonction de valeurs uniques. Dans ce contexte, « unique » fait référence à des valeurs distinctes ou non répétées au sein d’un ensemble de données.
Pour trier les données par valeurs uniques :
Exécutez les commandes suivantes pour effectuer ce qui suit :
- Définissez une liste de nombres entiers (avec des doublons inclus) dans la variable
$numbers
. - Triez les nombres par valeurs
-Unique
dans un ordre-Descending
et stockez le résultat dans la variable$sortedNumbers
.
Lorsque vous triez par valeurs uniques, vous organisez les données de sorte que chaque valeur n’apparaisse qu’une seule fois dans le résultat trié, éliminant ainsi les doublons.
Ces commandes ne fournissent pas de sortie, mais vous vérifierez les données triées à l’étape suivante.
Maintenant, exécutez la commande Write-Output
ci-dessous pour afficher le contenu de la variable $sortedNumbers
afin de vérifier le résultat.
Ci-dessous, toutes les valeurs uniques sont triées par ordre décroissant, et les valeurs en double ont été éliminées.
Comme vous pouvez le voir, le tri par valeurs uniques améliore l’efficacité de l’analyse des données et élimine les informations redondantes lors du traitement de grands ensembles de données.

Tri des données par chaînes de caractères
Jusqu’à présent, vous avez vu comment trier des valeurs numériques. Mais que se passe-t-il si vous travaillez avec des chaînes de caractères ? Ne vous inquiétez pas. La cmdlet Sort-Object
vous permet de classer les données de chaînes dans un ordre spécifique en fonction de critères de tri.
Dans ce contexte, une chaîne fait référence à un seul caractère ou à une séquence de caractères, tels que des mots, des phrases ou d’autres données textuelles. En PowerShell, les chaînes sont représentées en enfermant le texte entre des guillemets, soit simples ('
) soit doubles ("
).
Exécutez les commandes suivantes pour trier un tableau de chaînes par défaut dans l’ordre croissant (alphabétique).
Le tri des chaînes en PowerShell offre une flexibilité dans l’organisation des données textuelles dans un ordre souhaité, permettant une manipulation et une analyse efficaces des données.

Maintenant, exécutez les mêmes commandes, mais triez-les dans l’ordre -Descendant
à la place.
Cette fois, vous verrez la sortie dans l’ordre inverse, comme indiqué ci-dessous.

Trier les données par propriétés
Nul doute que le tri des chaînes est pratique. Mais en général, vous devriez être plus spécifique lors du tri des données. En plus du tri des chaînes, pourquoi ne pas trier les objets en fonction de leurs propriétés?
Lorsque vous travaillez avec des objets PowerShell, chaque objet possède généralement une ou plusieurs propriétés que vous pouvez utiliser pour le tri. Ces propriétés vous permettent de définir vos critères de tri selon vos besoins.
Exécutez les commandes suivantes pour récupérer une liste de tous les processus en cours d’exécution (Get-Process
) sur votre système et les trier par utilisation du CPU
. Le paramètre -Descending
affiche le résultat avec les processus les plus gourmands en ressources répertoriés en premier.

Tri des Tables de Hashage
Trier les objets par propriétés change la donne lorsqu’il s’agit d’analyse de données. Mais que se passe-t-il lorsque vous organisez les données par paires clé-valeur comme dans les tables de hashage?
Le cmdlet Sort-Object
vous permet de trier les tables de hashage pour améliorer la présentation des données et simplifier la récupération d’informations.
Exécutez le code suivant pour convertir une table de hachage en un tableau de paires clé-valeur et trier la table de hachage par ses clés.
Comme les clés trient la table de hachage, la sortie ressemblera à ce qui suit, où vous pouvez observer que la sortie organise et affiche les paires clé-valeur dans un ordre spécifique.
Cette méthode de tri garantit une meilleure présentation des données et facilite la récupération d’informations à partir de la table de hachage.

Conclusion
Tout au long de ce tutoriel, vous avez exploré comment trier des valeurs uniques, des chaînes de caractères, des nombres, des processus, et même des tables de hachage avec la commande Sort-Object
. Le tri des données est une tâche qui vous permet d’ouvrir la voie à une analyse de données plus perspicace, et avec la commande Sort-Object
de PowerShell, vous êtes sur la bonne voie.
Armé de ces connaissances nouvellement acquises, vous pouvez désormais vous assurer que vos données sont organisées de manière significative et les présenter avec confiance à d’autres.
Le tri n’est qu’une des nombreuses capacités précieuses de PowerShell et de ses cmdlets. Pourquoi ne pas élargir vos compétences en apprenant à connaître d’autres cmdlets? Peut-être créer des journaux de programme avec Tee-Object
ou mesurer les tailles d’objet avec Measure-Object
?
Source:
https://adamtheautomator.com/powershell-sort-object/