Formations Administration système avancée

Personnes travaillant sur des ordinateurs

A propos de Powershell

Avec PowerShell, Microsoft offre un digne successeur au MS-DOS et au VBScript. Et il était temps !

Pour les plus nostalgiques, Microsoft maintient un ensemble de commandes pour vous éviter d'être perdu durant la phase de transition entre les shells d'ancienne génération (MS-DOS, Bash) et ce tout nouveau shell.

Exemples de commandes que vous pouvez encore utiliser avec PowerShell et leur équivalent avec les commandlets natives :
help ou man deviennent Get-Help
dir ou ls deviennent Get-ChildItem
cd devient Set-Location
copy ou cp deviennent Copy-Item
etc.

Et cette aide n'est pas de trop pour la prise en main car en dehors du changement de nom des commandes, c'est toute une philosophie qui est revue.

Notamment les anciens shells ont des sorties textes qui obligent très souvent à la manipulation des chaînes de caractères avec des commandes, certes efficaces, mais non triviales à prendre en main telles : sed, awk, cut, grep, etc.

Désormais les sorties des commandes se font sous la forme d'objets ou de collection d'objets. Oublié le découpage des chaînes !

Exemples ?

 

Nombre de threads du 6ème processus :
(Get-Process)[5].Threads.Count

Filtre sur la propriété DisplayName de l'objet Service :
Get-Service | Where-Object {$_.DisplayName -like "Identi*"}

Ce shell ne reste pas un simple concept mais devient une partie intégrante des systèmes Windows. Ce n'est pas pour rien que PowerShell est la deuxième icône épinglée à la barre de tâches sur les systèmes Windows 2008 Server. Cela montre l'envie de Microsoft de pousser son dernier né et de généraliser son utilisation par les administrateurs.

Et loin d'en faire un gadget, Microsoft est en train de revenir sur les terres de prédilection des systèmes Linux, à savoir l'administration via des scripts et l'administration des serveurs intégralement en ligne de commandes. Ainsi tous les nouveaux logiciels serveurs de Microsoft viennent avec leur lot de commandes PowerShell pour les administrer. Et plus particulièrement lorsque l'on doit administrer des serveurs installés en mode Core, c'est-à-dire sans interface graphique.

PowerShell intéressera tous les administrateurs que ce soit pour la gestion quotidienne de leurs serveurs ou pour Active Directory, Exchange, IIS 7, WMWare, RDS, SQL Server, SharePoint, etc

Avec l'arrivée de Windows 8 Server, Microsoft est allé encore plus loin et les derniers morceaux d'administration qui n'étaient pas encore portés en PowerShell le sont désormais. Pour preuve : sur Windows 2008 R2, les modules disponibles par défaut étaient au nombre de 7, alors qu'ils sont désormais au nombre de 52 sous Windows 8 Server.

L'avenir de l'administration système sous Windows passera donc par la maîtrise de ce nouvel outil incontournable pour l'automatisation de l'ensemble des tâches courantes.