PowerShell en 2 minutes

Qu’est-ce que PowerShell ?

PowerShell est un langage de Shell System développé par Microsoft, pour des machines tournant sous Windows. Ce langage est directement inclus dans Windows depuis la version « 7 », mais il est également compatible avec les OS de Microsoft acceptant « .NET 2.0 ».

PowerShell se veut être le successeur du langage BATCH malgré que les deux soient disponibles dans les dernières versions de Windows. Les motivations de Microsoft sont de créer un langage avec autant de fonctionnalités et de sécurité que le Shell Linux. La majorité des commandes de base de PowerShell ont d’ailleurs un alias correspondant à la syntaxe utilisée sur un Shell Linux.

Quels sont ces particularités ?

La particularité du langage PowerShell est un langage Shell System qui intègre des fonctionnalités similaires à des langages de script comme Python. Nous voyons par exemple apparaitre le principe d’objet, qui est rare dans les langages Shell System. Cela permettra de faciliter la création de programme, mais aussi d’accéder à des objets générés par l’OS, qui permettront d’accéder à des informations système beaucoup plus facilement.

Une autre fonctionnalité directement héritée des langages de script et l’intégration de module. Un module est intégré au début du script et va permettre de faciliter l’interaction avec un logiciel ou une fonctionnalité de Windows. Par exemple, le module Active Directory permettra d’interagir avec la fonctionnalité du même nom. Ainsi les tâches liées à l’active directory seront directement automatisables via PowerShell.

Ainsi, en combinant les modules et les objets, le scripteur peut en quelques lignes de commande créer une interface graphique personnalisée, pour rendre son script plus agréable.

Que faut-il retenir ?

PowerShell est donc un moyen pour Microsoft, de rattraper son retard dans le domaine du script en implémentant un langage offrant beaucoup de possibilités et intégrant des concepts de programmation plus récent et confortable que ceux implémentés en BASH ou BATCH. Toutefois, ce langage est relativement récent et reste bien moins utilisé que ces alternatives.

--

--