Scripting
PowerShellIntermédiaire

PowerShell — les bases

Mis à jour le 30 juin 2026#PowerShell#cmdlet#pipeline#Windows#objets

Les cmdlets : Verbe-Nom

PowerShell s'articule autour de cmdlets nommées sur le modèle Verbe-Nom, ce qui les rend prévisibles et faciles à deviner :

Get-Process            # liste les processus
Get-Service            # liste les services
Stop-Service -Name spooler
New-Item fichier.txt

Les verbes sont standardisés : Get, Set, New, Remove, Start, Stop

Découvrir et s'aider

Get-Command *service*      # trouve les cmdlets liées aux services
Get-Help Get-Process -Examples   # aide et exemples d'une cmdlet

Variables

$nom = "Alice"
Write-Host "Bonjour $nom"

Le pipeline : des objets, pas du texte

C'est la différence majeure avec Bash : PowerShell fait circuler des objets (avec des propriétés), pas des lignes de texte. On peut donc filtrer et trier sur les propriétés directement :

Get-Process |
  Where-Object { $_.CPU -gt 10 } |   # filtre sur la propriété CPU
  Sort-Object CPU -Descending |
  Select-Object Name, CPU            # ne garde que 2 colonnes

$_ représente l'objet courant qui traverse le pipeline.

Opérateurs de comparaison

Attention, ils ne s'écrivent pas avec == :

OpérateurSens
-eq -neégal / différent
-gt -lt -ge -leplus grand / plus petit…
-likecomparaison avec joker (*)

Exécuter un script .ps1

Par sécurité, Windows bloque par défaut l'exécution des scripts. Il faut ajuster la stratégie d'exécution (en admin) :

Set-ExecutionPolicy RemoteSigned

💡 RemoteSigned autorise tes scripts locaux mais exige une signature pour les scripts téléchargés d'Internet — un bon compromis sécurité/usage.