Éteindre, redémarrer ou mettre en veille en ligne de commande (PowerShell et shutdown)
Redémarrer, éteindre, mettre en veille ou en veille prolongée en ligne de commande, redémarrer directement dans le BIOS/UEFI ou les options avancées, et annuler un arrêt programmé.
PowerShell : rechercher et remplacer un texte dans des centaines de fichiers
Remplacer un texte dans de nombreux fichiers (pages HTML, configurations, scripts) avec Get-ChildItem, -replace et Set-Content, avec simulation, sauvegarde et respect de l'encodage UTF-8.
PowerShell à distance : administrer un autre PC (Enable-PSRemoting, Invoke-Command)
Activer PowerShell Remoting (WinRM) sur un PC du réseau, ouvrir une session interactive avec Enter-PSSession, lancer une commande sur plusieurs PC avec Invoke-Command, et les précautions de sécurité.
PowerShell : lire et modifier le registre (Get-ItemProperty, Set-ItemProperty)
Naviguer dans le registre comme dans des dossiers avec PowerShell (HKCU:, HKLM:), lire une valeur, la modifier ou la créer avec Set-ItemProperty et New-ItemProperty, et sauvegarder avant.
PowerShell : personnaliser son profil (alias, fonctions, invite)
Créer le profil PowerShell ($PROFILE) pour charger automatiquement ses alias, fonctions et réglages à chaque ouverture : raccourcis de dossiers, invite personnalisée, et autocomplétion prédictive.
PowerShell : surveiller et arrêter des programmes (Get-Process, Stop-Process)
Lister les processus avec Get-Process, trouver ceux qui consomment le plus de mémoire ou de processeur, arrêter un programme figé avec Stop-Process, et attendre la fin d'un processus.
PowerShell : écrire et lancer son premier script .ps1
Créer un script PowerShell .ps1 dans VS Code, avec paramètres, variables et commentaires, autoriser son exécution, le lancer, et l'exécuter par raccourci ou tâche planifiée.
PowerShell : planifier un script avec Register-ScheduledTask
Créer une tâche planifiée en PowerShell pour lancer un script .ps1 chaque jour ou à l'ouverture de session : action, déclencheur, compte, puis tester et consulter le résultat.
PowerShell : le pipeline (Where-Object, Select-Object, Sort-Object)
Comprendre la force de PowerShell : des objets qui passent d'une commande à l'autre, filtrer avec Where-Object, choisir les colonnes avec Select-Object, trier, compter avec Measure-Object et exporter.
PowerShell : trier ses photos dans des dossiers par année et par mois
Un script PowerShell qui range automatiquement des milliers de photos et vidéos dans des dossiers Année/Mois d'après leur date, avec simulation, gestion des doublons de noms et journal.
PowerShell : explorer des résultats dans un tableau interactif (Out-GridView)
Afficher n'importe quel résultat PowerShell dans une fenêtre filtrable et triable avec Out-GridView, sélectionner des lignes pour agir dessus (-PassThru), et exporter.
PowerShell : afficher une notification Windows à la fin d'un script
Afficher une notification Windows depuis PowerShell avec le module BurntToast (titre, texte, image, bouton), ou un simple message ou son, pour être prévenu de la fin d'un long traitement.
PowerShell : gérer ses cartes réseau et configurer une IP fixe
Lister les cartes réseau et leur vitesse avec Get-NetAdapter, désactiver et réactiver une carte, configurer une adresse IP fixe et un DNS avec New-NetIPAddress, et revenir au DHCP.
PowerShell : générer des mots de passe aléatoires solides
Générer un mot de passe aléatoire sûr en PowerShell avec un générateur cryptographique, choisir la longueur et les caractères, le copier directement dans le presse-papiers, et créer une phrase de passe.
PowerShell : installer des modules depuis la PowerShell Gallery
Trouver et installer des modules PowerShell (PSWindowsUpdate, ImportExcel…) avec Find-Module et Install-Module, pour l'utilisateur courant, les mettre à jour et les désinstaller.
PowerShell : lancer des tâches en arrière-plan et en parallèle (Start-Job, -Parallel)
Exécuter des traitements longs sans bloquer la console avec Start-Job, récupérer les résultats avec Receive-Job, et accélérer une boucle avec ForEach-Object -Parallel en PowerShell 7.
PowerShell 7 : l'installer et ce qui change par rapport à Windows PowerShell 5
Installer PowerShell 7 avec winget, le lancer (pwsh), en faire le profil par défaut de Windows Terminal, et les principales différences avec PowerShell 5.1 livré avec Windows.
PowerShell : gérer les imprimantes (Get-Printer, files d'attente, imprimante par défaut)
Lister les imprimantes et leur état avec Get-Printer, vider une file d'attente bloquée avec Remove-PrintJob, ajouter une imprimante réseau par son adresse IP, et choisir l'imprimante par défaut.
Lister et désinstaller une mise à jour Windows problématique (Get-HotFix, wusa)
Voir les mises à jour Windows installées et leur date avec Get-HotFix, identifier celle installée juste avant un problème, la désinstaller avec wusa /uninstall, et l'empêcher de revenir.
PowerShell : créer ses propres objets et tables de hachage
Construire des objets PowerShell avec [pscustomobject] pour des rapports propres, utiliser les tables de hachage pour regrouper et compter, et ajouter des propriétés calculées avec Select-Object.
PowerShell : trouver les plus gros fichiers et dossiers du disque
Retrouver ce qui remplit le disque avec PowerShell : les 20 plus gros fichiers, la taille de chaque dossier, les fichiers anciens et les doublons, avant de faire le ménage.
PowerShell : trouver la bonne commande et son aide (Get-Command, Get-Help)
Se débrouiller seul en PowerShell : trouver une commande avec Get-Command et ses verbes, lire l'aide et les exemples avec Get-Help, découvrir les propriétés d'un objet avec Get-Member, et les alias.
PowerShell : lire, écrire et suivre des fichiers texte (Get-Content, Set-Content)
Lire un fichier texte avec Get-Content (début, fin, suivi en direct), écrire avec Set-Content et Out-File, ajouter avec Add-Content, remplacer du texte dans un fichier, et choisir l'encodage UTF-8.
PowerShell : écrire des fonctions et gérer les erreurs (try/catch)
Créer des fonctions PowerShell réutilisables avec paramètres typés et obligatoires, renvoyer des objets, gérer les erreurs avec try/catch/finally et -ErrorAction Stop, et écrire un journal.