PowerShell 7 est disponible pour Windows, macOS et Linux
Le 05 mars 2020 à 09h46
2 min
Logiciel
Logiciel
La nouvelle version majeure du shell introduit bon nombre de nouveautés, dont la plus importante est le passage à .NET Core 2.x à 3.1, provoquant un afflux d’API du framework .NET. Résultat, une compatibilité beaucoup plus importante avec les modules PowerShell existants de Windows.
« Cela comprend de nombreux modules sous Windows qui nécessitent des fonctionnalités d'interface graphique comme Out-GridView et Show-Command, ainsi que de nombreux modules de gestion des rôles livrés avec Windows », indique Microsoft.
PowerShell 7 introduit la parallélisation du pipeline avec ForEach-Object -Parallel
, les opérateurs de chaîne de pipeline (&&
et ||), l’opérateur ternaire (a ? b : c
), d'assignation nulle et de coalescence (??
et ??=
), les notifications de nouvelle version, une nouvelle « vue simplifiée et dynamique des erreurs » ou encore la commande Get-Error.
Les systèmes pris en charge sont nombreux, mais uniquement en x64 :
- Windows : 7, 8.1 et 10, Server 2008 R2, 2012, 2012 R2, 2016 et 2019
- macOS 10.13 et versions ultérieures
- Linux : RHEL/CentOS 7, Fedora 29, Debian 9, Ubuntu 16.04, openSUSE 15, Alpine Linux 3.8 et versions ultérieures
Microsoft précise que si Arch et Kali Linux ne sont pas officiellement supportés, la communauté fournit déjà des paquets. Les moutures ARM32 et ARM64 de Debian sont prises en charge, de même que la version ARM64 d’Alpine Linux.
Notez que PowerShell 7 représente l’unification des branches de développement. Le projet PowerShell Core en tant que tel n’existe plus, exactement comme le prévoit Microsoft avec le framework .NET 7. Bien que la mention Core puisse encore apparaître, ce sera uniquement dans un contexte de différenciation avec Windows PowerShell.
Le 05 mars 2020 à 09h46
Commentaires (26)
Vous devez être abonné pour pouvoir commenter.
Déjà abonné ? Se connecter
Abonnez-vousLe 05/03/2020 à 10h31
Pour ceux qui ont déjà Powershell 6, il suffit de taper dans une console autre que PowerShell 6 :
dotnet tool update –global PowerShell
Si vous êtes encore sous PowerShell 5 (ou précédent) :
dotnet tool install –global PowerShell
Dans tous les cas, .NET Core 3.1 doit d’abord avoir été installé.
Source :
Microsoft
Le 05/03/2020 à 10h58
(Vraie question sérieuse) Est-ce que quelqu’un, qui utilise PowerShell sous Linux, peut me donner une raison ou un avantage à l’utiliser plutot que Bash(ZSH, Fish, ) ?
Le 05/03/2020 à 11h20
Le 05/03/2020 à 11h32
Le 05/03/2020 à 11h38
Encore faut t’il que que Dotnet soit installé….
C’est le cas sur Windows, sous Linux ce n’est pas le cas par défaut.
Le 05/03/2020 à 11h42
Personnellement, je ne fais pratiquement que du Linux et je trouve PowerShell très intéressant. Par rapport aux shells classiques les fonctionnalité sont clairement un cran en dessus, avec notamment des données structurées et l’approche objet.
Cependant, pour l’instant, je garde juste un œil dessus car en pratique je n’ai pas trouvé le temps de m’y investir.
Le 05/03/2020 à 11h44
Le 05/03/2020 à 11h49
Quelqu’un sait comment on fait pour configurer un colorscheme avec WindowsTerminal (du store) ? J’ai bien essayé de modifier le profile.json… mais rien y fait, j’ai toujours le fond noir et les couleurs par défaut…
Le 05/03/2020 à 11h50
Merci " />
Le 05/03/2020 à 12h08
Merci pour vos réponses, effectivement, je n’ai absolument pas l’utilité de PS dans mon cas. Workstations linux, tous mes serveurs linux, je pratiques bash depuis 10 ans et écris tous mes scripts en python (objet aussi), voir meme en go pour des gros scripts destinés à tourner avec cron.
Le 05/03/2020 à 12h16
On est obligé de l’installer à la main ? ça ne serait pas fournit via windows update ou dans la version de base win 10 20H2 … ?
Le 05/03/2020 à 14h05
Le jour où l’on verra une console RSAT sous GNU/Linux, capable de gérer un AD sous smbd/nmbd, on pourra considérer que microsoft fait réellement un petit effort d’ouverture vers le libre.
Le 05/03/2020 à 14h20
Le 05/03/2020 à 14h21
Ce n’est pas faisable via WinRM et Powershell justement?
Le 05/03/2020 à 15h54
Il faut comparer l’équivalent.
L’équivalent à Powershell Core sous Unix, c’est Python, pas Bash.
Le gros avantage reste le concept objet/Méthode qui permet une réutilisation.
Le 05/03/2020 à 16h27
Le 05/03/2020 à 17h25
Un outil du genre Ansible est redoutablement efficace pour répondre à un besoin de déploiement sur un parc de ce type.
Surtout qu’il permet de ne pas avoir connaissance du secret car pouvant s’interfacer avec un solution de type Vault ou même tout simplement chiffrer les fichiers de variables.
Le 05/03/2020 à 19h45
au vu des commentaires, PS à l’air sympa… mais j’arrive pas du tout à accrocher.
et comme les serveurs windows auxquels j’ai accès ne sont pas en version core, je peux toujours me démerder avec du batch et/ou quelques clics… ce qui ne m’aide pas à m’y intéresser plus que ça (et sous linux, je reste sur du bash ou sh, qui sont par défaut sur les machines)
Le 05/03/2020 à 20h16
Pour vous donner un exemple d’utilisation, avec DevOps, on peut faire des build automatique avec des déploiements automatique.
Et DevOps utilise des scripts powershell pour faire tout ça. En fait, c’est plutôt à vous de créer ces scripts. Vous pouvez le faire avec des machines sous azure, des machines physique ou des dockers via des agents DevOps.
Et ces différentes machines peuvent être sous Windows, Linux ou Mac OS.
En bref, ils continuent à attirer de nouveaux clients sous azure avec de nouvelles possibilités tout en concurrençant encore plus AWS.
Il n’y a que peu d’intérêt pour ceux qui ont déjà leur propre système.
Le 05/03/2020 à 21h55
Idem.
Pour avoir un peu essayé, je trouve la syntaxe de PS imbuvable… des commandes à rallonge avec des accolades, des crochets, des majuscules dans les noms…
J’ai essayé une fois d’installer un windows server core… j’ai très vite déchanté et je me suis empressé d’installer les RSAT " />
Le 06/03/2020 à 06h25
Azure a détourné le nom de la démarche DevOps pour en faire une simple liste d’outils de CICD ? " />
Le 06/03/2020 à 07h24
Le 06/03/2020 à 10h09
Le 06/03/2020 à 13h58
Le 09/03/2020 à 18h34
Désolé, j’aurais pu être plus précis.
Le 11/03/2020 à 07h59