Formez vous à PowerShell V2 !

Publié le 24 janvier 2010 par Dominikg

J'avais déjà parlé brièvement de PowerShell dans ce billet qui concernait uniquement son utilisation dans SQL Server 2008.

Maintenant que Windows 7 et Windows Server 2008 R2 sont sortis, avec l'intégration en standard de PowerShell V2, également disponible en téléchargement pour XP, Vista et Serveur 2003, je voudrais en dire un peu plus sur ce nouveau Shell.

Il est hors de question de décrire en quelques lignes ses fonctionnalités, qui rendent obsolètes les cmd.exe, wsh et vbscript.  Les points qui me semblent les plus marquants sont l'orientation objet, la notion de conteneur et la volonté affichée de Microsoft d'écrire des nouvelles interfaces graphiques en utilisant une base d'applet de commande PowerShell.

Les applets de commande PowerShell manipulent des objets, qui peuvent être des objets spécifiques (fichiers, services, ..), des objets .NET ou COM, ou des instances de classe WMI. Les chaînages de commande transfèrent ces objets d'une applet à une autre. C'est très puissant et cela permet des écritures bien plus simples que le chaînage des commandes sous un Shell Unix qui transfère un flux de texte.

La notion de conteneur permet de considérer de la même façon une arborescence, quelle qu'elle soit : arborescence de fichiers, de clés du registre, d'entrées dans l'annuaire LDAP d'Active Directory ou encore bases de données de SQL Server. Cette standardisation permet d'éviter l'écriture et l'apprentissage de commandes différentes suivant le type d'entités que vous manipulez. Si vous savez lister les fichiers d'une arborescence, les renommer ou les filtrer suivant leur nom, vous savez faire la même chose pour les clés du registre ou l'annuaire LDAP : les commandes et les chaînages sont identiques, seuls les conteneurs changent.

Le troisième élément majeur est l'utilisation des applets PowerShell pour l'écriture des nouvelles interfaces graphiques. La meilleure illustration est l'outil "Centre d'administration Active Directory" apparu avec Windows Server 2008 R2. Il offre une interface d'administration bien plus agréable et efficace que les consoles d'administration classiques de l'AD et il est entièrement basé sur les applets de commande du module "Active Directory".

L'administrateur Windows dispose maintenant d'outils qui lui permettent une réelle automatisation de son environnement, qu'il peut réaliser lui même sans faire appel à des outils ou des ressources extérieures. Si vous ne l'avez pas encore fait, il est urgent de se pencher sur PowerShell (par exemple en venant vous former !) pour améliorer vos compétences et vous faciliter la vie.