Découvrir et installer PowerShell 7
- Windows PowerShell 5.1 et PowerShell 7 en comparaison : base .NET, installation en parallèle, pwsh.exe, utilisation sous Windows, Linux et macOS
- Modèle de publication avec versions LTS et Stable, installation et mise à jour, sous Windows également via Microsoft Update
- Environnement de travail : console, Visual Studio Code avec l’extension PowerShell, profils
- Trouver l’aide et les commandes : Update-Help, Get-Help, Get-Command, Get-Member, alias
Travailler avec les commandes et le pipeline
- Syntaxe des cmdlets, paramètres et splatting
- Sélectionner, trier, grouper et mesurer des objets dans le pipeline, filtrer avec Where-Object et traiter avec ForEach-Object
- Comprendre la liaison de paramètres ByValue et ByPropertyName et l’utiliser de manière ciblée
- Mettre en forme et rediriger les sorties, exporter, importer et convertir des données au format CSV, JSON et XML
Providers, fichiers et informations système
- PSProvider et PSDrives : système de fichiers, registre, magasin de certificats, variables d’environnement
- Gérer des fichiers et des dossiers, analyser des fichiers texte, encodage des caractères (UTF-8 sans BOM par défaut)
- Interroger et modifier les informations système avec les cmdlets CIM – les cmdlets WMI v1 n’existent plus dans PowerShell 7
- Analyser les services, les processus et les journaux d’événements avec Get-WinEvent
Modules et packages
- Trouver, charger et gérer des modules, comprendre PSModulePath
- Installer et mettre à jour des modules de la PowerShell Gallery avec Microsoft.PowerShell.PSResourceGet
- Continuer à utiliser des modules pour Windows PowerShell via la compatibilité Windows PowerShell
De la commande au script
- Variables, types de données, tableaux, tables de hachage et PSCustomObject
- Opérateurs, dont ceux introduits avec PowerShell 7 : opérateur ternaire, opérateurs de chaînage de pipeline, opérateurs de coalescence null et opérateurs conditionnels null
- Structures de contrôle : if, switch, foreach, while
- Stratégies d’exécution, signature de scripts et gestion sécurisée des informations d’identification
Fonctions, gestion des erreurs et modules personnalisés
- Fonctions avec paramètres, validation simple des paramètres et aide basée sur les commentaires
- Gestion des erreurs avec try, catch et finally, ErrorActionPreference, affichage d’erreurs ConciseView et Get-Error
- Fournir ses propres fonctions sous forme de module de script
Administration à distance
- Configurer le remoting PowerShell via WinRM et via SSH
- Exécuter des commandes sur plusieurs ordinateurs avec Invoke-Command, utiliser des sessions persistantes (PSSession)
- Administrer à distance des serveurs sans interface graphique, comme Server Core
Travaux et parallélisation
- Démarrer et analyser des travaux en arrière-plan et des travaux de threads
- Accélérer le traitement avec ForEach-Object -Parallel
- Exécuter des scripts de manière planifiée via le Planificateur de tâches Windows
- Exercice final : recenser l’inventaire de plusieurs serveurs par script et l’exporter sous forme de rapport