Comment connaître sa version de PowerShell ?
I. Présentation
PowerShell est actuellement sous la forme de deux produits distincts : Windows PowerShell exclusive à Windows et PowerShell (Core) compatible avec Windows, Linux et macOS. Ainsi, d'une machine à une autre, vous êtes susceptible de ne pas rencontrer la même version de PowerShell.
Sachez que Windows PowerShell 5.1 est la version la plus récente et qu'elle est disponible par défaut sur Windows 10, Windows 11 et les dernières versions de Windows Server. Par exemple, Windows Server 2025 embarque par défaut Windows PowerShell 5.1.
Mais, comment peut-on connaître avec certitude la version de PowerShell installée sur un ordinateur ou un serveur ? Dans ce tutoriel, nous allons répondre à cette question grâce à une astuce permettant de savoir la version de PowerShell installée sur une machine.
II. Obtenir la version de PowerShell
Ouvrez simplement une console PowerShell ou l'application Windows Terminal avec une console PowerShell. Une fois que c'est fait, saisissez cette commande :
$PsVersionTable
Vous obtiendrez un résultat comme ceci :
En réalité, ce n'est pas vraiment une commande, mais plutôt une variable prédéfinie intégrée à PowerShell dans le seul de retourner des informations sur la version installée.
Ainsi, nous pouvons consulter la ligne PSVersion
pour prendre connaissance de la version de PowerShell installée. Ici, nous pouvons voir que c'est une machine ancienne, car elle est équipée de PowerShell 3.0. Par exemple, sur une machine Windows 11 24H2, la version retournée est 5.1.26100.3624.
Remarque : si vous exécutez la commande dans une console PowerShell ou Windows PowerShell, vous n'aurez pas le même résultat puisqu'il s'agit de deux environnements différents. De plus, vous pouvez avoir les deux sur une même machine.
Nous pouvons même aller plus loin pour obtenir encore plus de détails sur la version actuelle :
$PsVersionTable.PSVersion
Nous obtenons un résultat plus précis, avec un numéro de version découpé. Sur une machine Windows 11 24H2, cela donne :
Major Minor Build Revision
----- ----- ----- --------
5 1 26100 3624
Une autre méthode consiste à utiliser la variable $host
ou la commande Get-Host
, le résultat de ces deux commandes sera identique. Vérifiez par vous-même :
Enfin, si vous souhaitez récupérer uniquement le numéro de version dans une variable, voici différents exemples :
$PSVersionTable.PSVersion.Major (Get-Host).Version.Major $Host.Version.Major
Cela permet de sélectionner uniquement une propriété dans le résultat de la commande, ce qui pourra être utile dans vos scripts de récupérer uniquement la valeur de la version.
III. Conclusion
PowerShell contient plusieurs variables prédéfinies destinées à retourner des informations, comme c'est le cas de $PSVersionTable
. Pour en savoir plus sur PowerShell, retrouvez mon cours gratuit et mon livre :
- Débuter avec le langage PowerShell
- Livre de Florian Burnel : Débuter avec le langage PowerShell
Merci Florian
Bonne journée
Frederic