- Windows PowerShell
-
Windows PowerShell Capture d'écran d'une session PowerShellDéveloppeur Microsoft Corporation Première version 14 novembre 2006 Dernière version 2.0 (22 juillet 2009) [+/−] Environnement .NET Framework Site web www.microsoft.com/powershell modifier Windows PowerShell Apparu en 2006 Auteur Jeffrey Snover, Bruce Payette, James Truher (et al.) Développeur Microsoft Corporation Paradigme Multi-Paradigme: Imperatif, Orienté Object,Fonctionnel etReflexif Typage Fort, Sûr, Implicite et dynamique Influencé par C#, DCL, ksh, Perl, Ruby/Lisp, CL, SQL, Command Prompt, Tcl Système d'exploitation Microsoft Windows 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 inclus dans Windows 7 (y compris la version grand public) et fondé sur la programmation orientée objet (et le framework Microsoft .NET).
À l'origine, il était prévu que PowerShell soit inclus dans Windows Vista, mais finalement les deux logiciels ont été 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 été publiée le 14 novembre 2006. Powershell est également inclus dans Microsoft Exchange Server 2007, sorti au quatrième trimestre 2006, ainsi que la plupart des produits Microsoft sortis depuis.
PowerShell est compatible avec toutes les versions de Windows qui supportent la version 2.0 de .NET.
Depuis le 24 mars 2009, PowerShell 1.0 pour Windows XP et Vista est distribué comme une mise à jour logicielle facultative par le service Windows Update de Microsoft. Il est intégré nativement dans Windows 7 en version 2.0[1].
Sommaire
Histoire
PowerShell est le successeur des interfaces en ligne de commande fournies 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 depuis 1993.
On peut aussi mentionner Windows Scripting Host (WSH), introduit en 1998, qui connut un certain succès auprès des administrateurs mais ne permet pas une utilisation interactive : les scripts peuvent être appelés depuis la ligne de commande, mais ils doivent être préalablement enregistrés dans un fichier.
Aucune de ces interfaces n'est conforme à POSIX 2 (POSIX étant une norme faite pour les shell unix qui eux ne sont pas orientés objet mais plutôt flux de texte à décomposer et à interpréter).
Comparaison de PowerShell et des langages de script UNIX
À la base influencé par le langage Tcl[2], PowerShell est plus proche des langages de script orientés objet comme Perl que de langages de shell, comme bash. Il n'y a aucune ressemblance entre le PowerShell et le très simpliste langage batch des fichiers .BAT de DOS/Windows.
Le but de Microsoft est de faire un langage de script complètement intégré, avec autant de fonctionnalités que celles qui existent sous Unix (et Linux) et avec le même niveau de sécurité.
Par contre, les échanges entre composants se font sous forme d'objets et non pas de texte :
- sous UNIX, les échanges se font sous forme d'un tube sous la forme d'un flux d'octets souvent interprété entre l'entrée d'un composant et la sortie d'un composant.
- à l'opposé, avec PowerShell, les échanges se font au format objet. En effet, PowerShell rend accessible en ligne de commande les bibliothèques .NET.
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).
Notes et références
Annexes
Articles connexes
Liens externes
- (fr) PowerShell pour les nuls Débuter avec Powershell
- (fr) Application des bonnes pratiques Microsoft avec PowerShell
- (fr) La communauté PowerShell Francophone Site entièrement dédié à PowerShell
- (fr) KB926140 - Windows PowerShell 1.0 Requiert le .NET Framework 2.0
- (fr) Cours et tutoriels en français sur PowerShell
- (en) Blog officiel de PowerShell
- (en) Powershell Masters
- (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) Converting VBScript Commands to Windows PowerShell Commands - This guide is intended to help you translate VBScript scripts to Windows PowerShell scripts.
- (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 set of sample MSH scripts which you can download and use.
- (en) Links to Monad blogs.
- (en) Channel9 Wiki: MSHWiki - A blog dedicated to MSH and MSH Scripts
- (en) Microsoft Script Center
- (fr) Support de cours / Tutorial PowerShell
- (en) PowerShell Quick Reference
Wikimedia Foundation. 2010.