Windows PowerShell
Un article de Wikipédia, l'encyclopédie libre.
Windows PowerShell, anciennement Microsoft Command Shell -MSH-, (nom de code Monad) est une interface en ligne de commande et un langage de script développé par Microsoft. Il est basé sur la programmation orientée objet et le framework Microsoft .NET.
À l'origine, il était prévu que le shell PowerShell soit inclus dans le futur Windows Vista, mais finalement les 2 logiciels seront disjoints. Microsoft a publié une version BETA le 11 septembre 2005, une Release Candidate 1 le 25 Avril 2006 et une Release Candidate 2 le 26 septembre 2006. La version finale a elle été publiée le 14 Novembre 2006. Microsoft prévoit que le shell PowerShell sera également inclus dans Microsoft Exchange Server 2007, qui devrait sortir au quatrième trimestre 2006.
PowerShell est compatible avec toutes les versions de Windows qui supportent la version 2.0 de .NET.
Sommaire |
[modifier] Historique
PowerShell est le successeur des interfaces en ligne de commande fournis par
- command.com (c'est-à-dire l'interface MS-DOS) de Millennium, Windows 98 et de ses prédécesseurs ;
- cmd.exe de Windows NT à partir de 1993.
Ces anciennes interfaces n'étaient pas conformes à POSIX 2.
En 1998, Microsoft livra le langage de script Windows Script Host (WSH), (voir (en) en:Windows Script Host), qui connut un certain succès auprès des administrateurs.
[modifier] Comparaison de PowerShell et des langages de script de Unix/Linux
PowerShell est plus proche de langage de script orienté objet comme Perl que de langages de shell, comme bash (aucune ressemblance entre le PowerShell et l'ultra-simpliste langage batch des fichiers .BAT de Windows).
Le but de Microsoft est de faire un langage de script complètement intégré, avec autant de fonctionnalités que ceux qui existent sous Unix (et linux) et avec le même niveau de sécurité.
Par contre, les échanges entre composants se feront sous forme d'objet et non pas de texte :
- Sous Unix, les échanges se font sous forme d'un pipeline au format texte entre entrée d'un composant et la sortie d'un composant.
- À l'opposé, avec PowerShell, les échanges se font au format objet de .NET.
[modifier] Origine du nom de code
Le nom de code Monad vient du livre Monadologie du philosophe Leibniz : la monadologie affirme que la réalité est composée d'éléments fondamentaux appelés monades, qui sont intégrés ensemble dans une harmonie pré-établie.
De façon analogue, PowerShell est composé d'une série de tâches exécutées par une série de composants. Dans le cas présent, ces composants sont appelées commandlets (ou cmdlets).
[modifier] Liens externes
- (fr) La communauté PowerShell Francophone Site entièrement dédié à PowerShell
- (fr) KB926140 - Windows PowerShell 1.0 Requiert le [.NET Framework] 2.0
- (en) Blog officiel de PowerShell
- (fr) Blog de Jacques Barathon (MS) - principalement consacré à PowerShell
- (en) The .NET Show - a Microsoft video discussing various aspects of .NET and Vista (codenamed Longhorn). Search for "Jeffrey Snover" in the transcript for the discussion of MSH/Monad
- (en) A guided tour of the Microsoft Command Shell - A comprehensive, 13 page overview that thoroughly examines many aspects of MSH syntax, security, and .NET integration.
- (en) Converting VBScript Commands to Windows PowerShell Commands - This guide is intended to help you translate VBScript scripts to Windows PowerShell scripts.
- (en) Future Windows component could spur old-school script viruses - Monad's role in future security concerns, by Paul Roberts, IDG News Service
- (en) Monad and the "First Vista Virus" - a Microsoft developer's rebuttal of security concerns
- (en) A list of links to blog entries related to MSH/Monad
- (en) A list of links to more information about Monad-MSH
- (en) A set of sample MSH scripts which you can download and use.
- (en) en:del.icio.us tags: monad msh monad+msh
- (en) Links to Monad blogs.
- (en) Channel9 Wiki: MSHWiki - A blog dedicated to MSH and MSH Scripts