Introduction
Avec l'arrivée de Windows Vista, Microsoft nous offre une nouvelle ligne de commande basée sur le Framework .NET et bien plus performante que la précédente. Il faut avouer que l'ancienne ligne de commande basée sur MS-DOS faisait pâle figure face au Shell UNIX. Cette nouveauté répondait au nom de code Monad et est actuellement connue sous le nom de Windows PowerShell.
Les buts de PowerShell sont multiples : être au moins égal sinon meilleur que le shell UNIX, avoir une interopérabilité et une compatibilité avec les commandes et les scripts existants, une meilleur sécurité, une navigation approfondie (système de fichiers, base de registre, partages réseau, ...) et bien d'autres encore. Inclus dans ce shell on trouve les cmdlets (prononcer command-lets). C'est cette partie de PowerShell que nous allons aborder.
Les cmdlets sont en fait des instances de classes .NET et peuvent être simplement décrites comme des commandes. Par exemple get-process va retourner la liste de processus en cours et il est bien entendu possible de passer des arguments pour effectuer diverses manipulations.