PowerShell est l’epine dorsale de l’administration Windows depuis plus d’une decennie. Avec la sortie de PowerShell 7, Microsoft a fondamentalement change la direction de cet outil critique — le rendant multiplateforme, open-source et dote de fonctionnalites modernes.
Comparaison PowerShell 5.1 vs 7
| Caracteristique | Windows PowerShell 5.1 | PowerShell 7.x |
|---|---|---|
| Runtime | .NET Framework 4.x | .NET 8+ |
| Plateformes | Windows uniquement | Windows, Linux, macOS |
| Open Source | Non | Oui (Licence MIT) |
| Operateur Ternaire | Non supporte | condition ? vrai : faux |
| Null-Coalescing | Non supporte | $x ?? 'defaut' |
| ForEach -Parallel | Non supporte | Traitement parallele integre |
Installation
Windows
winget install --id Microsoft.PowerShell --source winget
Linux
sudo apt-get update
sudo apt-get install -y powershell
pwsh
macOS
brew install powershell/tap/powershell
pwsh
Nouvelles Fonctionnalites
Operateur Ternaire
$statusText = ($service.Status -eq 'Running') ? 'Sain' : 'Arrete'
Null-Coalescing
$serverName = $config.ServerName ?? 'localhost'
$logPath ??= 'C:\Logs\default.log'
ForEach-Object -Parallel
$servers | ForEach-Object -Parallel {
Test-Connection -ComputerName $_ -Count 1 -Quiet
} -ThrottleLimit 10
Checklist de Migration
- Inventorier tous les scripts utilisant PowerShell 5.1
- Verifier la compatibilite des modules
- Tester chaque script dans PowerShell 7
- Mettre a jour les taches planifiees pour utiliser
pwsh.exe - Configurer SSH remoting sur les serveurs
Conclusion
PowerShell 7 represente un bond en avant majeur. Le modele d’installation cote a cote signifie qu’il n’y a aucun risque a l’essayer — vos scripts existants continueront de fonctionner exactement comme avant.