Emplacement de stockage temporaire en mémoire, toujours préfixé par $. Le type est inféré automatiquement à l'affectation.
$variable = "une valeur"
Gérées par PowerShell, en lecture seule. Reflètent l'état du système.
Get-Help about_automatic_variable
Exemples : $? (succès de la dernière commande), $PWD (répertoire courant).
Modifiables. Définissent le comportement de PowerShell.
Get-Help about_preference_variable
Exemple notable : $ErrorActionPreference (comportement en cas d'erreur).
Get-Variable
$UnMot = "papamica"
$UnMot.ToUpper() # → PAPAMICA
$UnMot.Replace("a","@") # → p@p@mic@
$UnMot.GetType() # → type de la variable
$UnMot | Get-Member # lister toutes les méthodes et propriétés disponibles
$mot = "PowerShell"
Write-Host "J'apprends $mot" # → J'apprends PowerShell
Pour intégrer une méthode dans une chaîne, deux approches :
# Option 1 — réaffecter avant
$mot = $mot.ToUpper()
Write-Host "J'apprends $mot"
# Option 2 — sous-expression inline
Write-Host "J'apprends $($mot.ToUpper())"
Conserve la mise en forme d'un bloc de texte multiligne :
$texte = @"
Ligne 1
Ligne 2 avec $mot
"@
Par défaut, une variable est locale à son bloc {}. Elle n'est pas accessible dans la portée parente.
# Rendre une variable globale
$global:portee = "valeur accessible partout"
$_Représente l'objet courant dans un pipeline :
Get-Service | Where-Object { $_.Status -eq "Stopped" }