Movatterモバイル変換


[0]ホーム

URL:


Aller au contenu
Wikipédial'encyclopédie libre
Rechercher

Windows PowerShell

Un article de Wikipédia, l'encyclopédie libre.

Windows PowerShell
Description de l'image PowerShell_Core_6.0_icon.png.
Description de cette image, également commentée ci-après
Capture d'écran d'une session PowerShell.
Informations
Développé parMicrosoft
Première version
Dernière version1.5 ()[1]
7.5.3 ()[2]Voir et modifier les données sur Wikidata
Dépôtgithub.com/PowerShell/PowerShell,github.com/fleschutz/PowerShell etgithub.com/lazywinadmin/PowerShellVoir et modifier les données sur Wikidata
Assurance qualitéIntégration continueVoir et modifier les données sur Wikidata
Écrit enC# et PowerShellVoir et modifier les données sur Wikidata
Système d'exploitationMicrosoft Windows, Windows Server(en),Ubuntu,Debian,CentOS,Red Hat Enterprise Linux,openSUSE,Fedora Linux,Arch Linux etmacOSVoir et modifier les données sur Wikidata
EnvironnementFramework .NET
Formats lusWindows PowerShell types (UTF-8)(d), Windows PowerShell types(d), Windows PowerShell formatting(d), Windows PowerShell formatting (UTF-8)(d), PowerShell Cmdlet Definition XML (UTF-8)(d), PowerShell Cmdlet Definition XML(d) et PowerShell script(d)Voir et modifier les données sur Wikidata
Formats écritsWindows PowerShell types (UTF-8)(d), Windows PowerShell types(d), Windows PowerShell formatting(d), Windows PowerShell formatting (UTF-8)(d), PowerShell Cmdlet Definition XML (UTF-8)(d) et PowerShell Cmdlet Definition XML(d)Voir et modifier les données sur Wikidata
TypeLangage en ligne de commande(d)
Langage interprété
Interface système
Interface en ligne de commande
Application console(en)
Langage de scriptVoir et modifier les données sur Wikidata
LicenceMIT Licence
Site webPowerShell

modifier -modifier le code -voir Wikidata(aide)

Windows PowerShell, anciennementMicrosoft Command Shell (MSH), nom de codeMonad, est unesuite logicielle développée parMicrosoft qui intègre uneinterface en ligne de commande, unlangage de script nommé PowerShell ainsi qu'unkit de développement. Il est inclus dansWindows 7,Windows 8.1,Windows 10 etWindows 11 (y compris les versions grand public) et s'appuie sur leframeworkMicrosoft .NET.

Histoire

[modifier |modifier le code]

Prédécesseur

[modifier |modifier le code]

Windows PowerShell est le successeur des interfaces en ligne de commande DOS/Windows fournies par

On peut aussi mentionnerWindows 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 lesshells Unix qui eux ne sont pas orientés objet mais plutôt flux de texte à décomposer et à interpréter).

Environnement Windows PowerShell

[modifier |modifier le code]

À l'origine, il était prévu que l'environnement Windows PowerShell soit inclus dansWindows Vista, mais finalement les deux logiciels ont été disjoints. Microsoft a publié une version beta le, unerelease candidate 1 le et unerelease candidate 2 le. La version finale a été publiée le. Windows PowerShell est également inclus dansMicrosoft Exchange Server 2007, sorti au quatrième trimestre 2006, ainsi que la plupart des produits Microsoft sortis depuis.

Windows PowerShell est compatible avec toutes les versions deWindows qui supportent la version 2.0 de .NET.

Depuis le, Windows PowerShell 1.0 pour Windows XP et Vista est distribué comme une mise à jour logicielle facultative par le serviceWindows Update de Microsoft. Il est intégré nativement dansWindows 7 en version 2.0[3]. Cette version propose une console d'édition de script intégré appeléWindows PowerShell ISE (pourintegrated scripting environment en anglais) qui apporte une solution de substitution à l'outilPowerGUI Script Editor développé par la sociétéQuest Software. Comme son homologue, Windows PowerShell ISE présente un environnement graphique qui permet l’édition de script aveccoloration syntaxique, affichage des numéros de ligne,débogueur intégré etaide en ligne.

DepuisWindows 8, PowerShell dispose d'une place plus prononcée au sein du système d'exploitation avec un raccourci dans toutes les fenêtres de l'explorateur de fichiers, dans le menu Fichier[4].

Origine du nom de code

[modifier |modifier le code]

Le nom de codeMonad vient du livreMonadologie du philosopheLeibniz où il affirme que la réalité est composée d'éléments fondamentaux appelésmonades, qui sont intégrées dans une harmonie préétablie.

De façon analogue, Windows 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éscommandlets (abrégées encmdlets dans la console de commande), on rencontre aussi l'anglicismecommandelettes.

Langage PowerShell

[modifier |modifier le code]

PowerShell
Logo.
Image illustrative de l’article Windows PowerShell

Date de première version2006
ParadigmeMulti-Paradigme:imperatif,orienté objet,fonctionnel etréflexif
AuteurJeffrey Snover,Bruce Payette,James Truher (et al.)
DéveloppeurMicrosoft Corporation
Dernière version1.5 ()[1]
7.5.3 ()[2]Voir et modifier les données sur Wikidata
TypageFort,Sûr,Implicite etdynamique
Influencé parC#, DCL,ksh,Perl,Ruby,Lisp, CL,SQL,Command Prompt,Tcl
Écrit enC# et PowerShellVoir et modifier les données sur Wikidata
Système d'exploitationMicrosoft Windows
LicenceLicence MIT[5]Voir et modifier les données sur Wikidata
Site webmicrosoft.com/powershellVoir et modifier les données sur Wikidata
modifier 

PowerShell est unlangage de script fondé sur laprogrammation orientée objet. Le logiciel PowerShell (fichier exécutablepowershell.exe) est l'interpréteur del’interface en ligne de commande de l'environnement de développement Windows PowerShell.

L'environnement Windows PowerShell ne propose pas seulement une suite de commandes d'administration et de gestion du système comme pouvait l’être certainsshells notamment son ancêtrecommand.com avec ses fichiersbatch, c'est aussi uninterprète delangage de script orienté objet[6].

Syntaxe

[modifier |modifier le code]

Lescommandes PowerShell sont constituées d'un verbe ou préfixe et d'un nom séparés par untiret. Elles peuvent être suivies de paramètres. On les appelle descommandlets pourcommand applets en anglais ouphrases en français[réf. nécessaire]. Dans l'interface en ligne de commande elles sont abrégées encmdlets. On rencontre parfois l’anglicismecommandelettes[7].

L'utilisation d'instructions structurées comme des phrases permet de mémoriser plus simplement un grand nombre de commandes. Cette facilité est toutefois limitée, car elle s'applique uniquement aux personnes qui possèdent un minimum de vocabulaire anglais.

Exemple :

PS C:\> Get-Help

Cette phrase qui signifie littéralement en français « Obtenir-Aide » affichera l'aide[8] du PowerShell après l'avoir validée avec latouche entrée dans la console de commande.

Implication du préfixe dans la phrase

[modifier |modifier le code]

Le préfixe de la commandelette est appelé verbe[9] bien qu'il n'en soit pas toujours un. Il est appelé ainsi car il détermine l'action à effectuer sur les entités désignées dans la phrase.

Liste des verbes

[modifier |modifier le code]
  • Add permet d'ajouter des données ou informations sur le nom qui le suit ;
  • Get permet d'obtenir des données ou informations sur le nom qui le suit ;
  • Clear permet deréinitialiser un affichage ou une variable ;
  • Import etExport permet d'importer/exporter des fichiers de commandes ou des alias ;
  • New permet decréer de nouveaux objets ou variable ;
  • Set permet dedéfinir des données ou informations sur le nom qui le suit ;
  • Write permet d'écrire des données ou informations sur le nom qui le suit et peut agir comme le compte-rendu d'une commande.
  • Shutdown

Comparaison du langage PowerShell et des langages de script UNIX

[modifier |modifier le code]

À la base influencé par le langageTcl[10], PowerShell est plus proche des langages de script commePerl que de langages de shell, commeBash. Il n'y a aucune ressemblance entre le PowerShell et le 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 sousUnix (etLinux) 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'untube 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 Windows PowerShell, les échanges se font au format objet. En effet, Windows PowerShell rend accessibles en ligne de commande les bibliothèques.NET.
PowerShell (Cmdlet)PowerShell (Alias)CMD.EXE /COMMAND.COMShell UnixDescription
Get-ChildItemgci, dir, lsdirls,dirListe les fichiers / répertoires du répertoire (courant)
Get-Contentgc, type, cattypecatObtenir le contenu d'un fichier
Get-Commandgcmhelphelp,whichListe des commandes
Get-Helphelp, manhelpmanAide
Clear-Hostcls, clearclsclearEfface l'écran
Copy-Itemcpi, copy, cpcopycpCopier un ou plusieurs fichiers / l'arborescence complète
Move-Itemmi, move, mvmovemvDéplacer un fichier / répertoire
Remove-Itemri, del, erase, rmdir, rd, rmdel,deltree, erase,rmdir, rdrm, rmdirSupprimer un fichier / répertoire
Rename-Itemrni, ren, mvren, renamemvRenommer un fichier / répertoire
Get-Locationgl, pwdcdpwdAfficher le répertoire de travail courant
Pop-LocationpopdpopdpopdChanger le répertoire courant vers le répertoire le plus récemment poussé sur la pile
Push-LocationpushdpushdpushdPousser le répertoire courant sur la pile
Set-Locationsl, cd, chdircd,chdircdChanger le répertoire courant
Tee-ObjectteeNCteeDiriger l'entrée vers un fichier ou une variable, puis la passer dans un pipeline
Write-Outputecho, writeechoechoAfficher des chaînes, variables etc sur la sortie standard
Get-Processgps, pstlistpsListe de tous les processus en cours d'exécution
Stop-Processspps, killkillkillArrêter un processus en cours d'exécution
Select-Stringsls, findstrfind, findstrgrepRecherche d'une chaine de caractère
Set-Variablesv, setsetenv, export, set, setenvDéfinir la valeur d'une variable / créer une variable
Invoke-WebRequestiwr, wget, curlNCwget,cURLObtient le contenu d'une page web

Avantages

[modifier |modifier le code]

PowerShell permet de gérer leschaînes de caractères avec des unités de 16 bits, comme cela se fait sur Windows, la plateforme .NET, Java et JavaScript.

Limitations

[modifier |modifier le code]

PowerShell ne peut pas afficher les caractèresUnicode lorsqu'il est utilisé au travers deWindows console subsystem. Un contournement pour y arriver consiste à utiliser PowerShell ISE, une interface graphique[11].

Annexes

[modifier |modifier le code]

Sur les autres projets Wikimedia :

Articles connexes

[modifier |modifier le code]

Liens externes

[modifier |modifier le code]

Bibliographie

[modifier |modifier le code]
  • Windows PowerShell, Ed Wilson, 2007, Dunod

Références

[modifier |modifier le code]
  1. ab etc« Release 1.5 »,(consulté le)
  2. ab etc« Release 7.5.3 »,(consulté le)
  3. Nouveautés de Windows PowerShell dans Windows 7.
  4. Le menu de l'explorateur dans Windows 8.
  5. « https://github.com/PowerShell/PowerShell/blob/master/LICENSE.txt »
  6. Windows PowerShell.
  7. ArnaudPETITJEAN et RobinLEMESLE,Windows PowerShell : version 1 et 2,vol. 1, Editions ENI,, 673 p.(ISBN 978-2-7460-5342-7),p. 26 et 31
  8. « Windows PowerShell », surMicrosoft TechNet(consulté le).
  9. « Les verbes approuvés pour les commandes PowerShell », surdocs.microsoft.com(consulté le)
  10. Jeffrey Snover, Windows PowerShell : PowerShell and WPF: WTF.
  11. « Printing Unicode characters to the PowerShell prompt », surStack Overflow(consulté le).
v ·m
Principal
Configuration
Applications
Jeux
Noyau
Services
Systèmes de fichiers
Serveur/Réseau
Architecture
Sécurité
Compatibilité
v ·m
Concurrents
Déclaratifs
Fonctionnels
Impératifs
Orientés objet
Ce document provient de « https://fr.wikipedia.org/w/index.php?title=Windows_PowerShell&oldid=231787861 ».
Catégories :
Catégories cachées :

[8]ページ先頭

©2009-2026 Movatter.jp