Interpolation de chaînes en PowerShell
- Qu’est-ce que les variables dans PowerShell ?
- Interpolation de chaînes dans Windows PowerShell
- Interpolation de chaînes avec des variables d’environnement dans PowerShell
- Interpolation de chaînes avec des caractères d’échappement dans PowerShell
- Interpolation de chaînes utilisant des variables avec des caractères spéciaux dans PowerShell
- Interpolation de chaînes utilisant un opérateur de sous-expression dans PowerShell
- Conclusion

L’interpolation de chaîne dans PowerShell est une fonctionnalité puissante qui facilite le formatage dynamique des chaînes en intégrant des valeurs de variables, des expressions et des commandes au sein des chaînes. Ce guide complet explore en profondeur les complexités de l’interpolation de chaîne, offrant des informations détaillées, des exemples et des applications pratiques de cette fonctionnalité.
L’interpolation de chaîne remplace la valeur d’une variable par des espaces réservés dans une chaîne. De plus, le processus d’interpolation de chaîne affiche la valeur de la variable dans la chaîne.
L’interpolation de chaîne de Windows PowerShell fournit une syntaxe plus lisible, plus facile à lire et pratique pour créer une chaîne formatée. Cet article discutera de l’utilisation des variables lors de l’interpolation de chaîne dans Windows PowerShell.
Qu’est-ce que les variables dans PowerShell ?
Avant de discuter de l’interpolation de chaîne de Windows PowerShell, nous devrions d’abord discuter de l’une des exigences critiques pour y parvenir : les variables de Windows PowerShell.
Les variables dans PowerShell servent de conteneurs pour stocker des données, permettant aux utilisateurs de conserver des informations et de les manipuler tout au long de l’exécution du script. Elles agissent comme des noms symboliques représentant une valeur ou un objet spécifique, fournissant un moyen de référencer et de travailler avec des données dans les scripts PowerShell.
Aspects clés des variables dans PowerShell :
Déclaration et nommage
Déclaration :
Les variables dans PowerShell sont déclarées en utilisant le symbole $
suivi d’un nom.
Exemple :
$my_var = "Hello World!"
Règles de nommage :
- Doit commencer par une lettre ou un trait de soulignement.
- Peut contenir des lettres, des chiffres et des traits de soulignement.
- Insensible à la casse (
$variable
et$Variable
font référence à la même chose).
Types de données
Typage dynamique :
PowerShell utilise un typage dynamique, permettant aux variables de contenir différents types de données sans déclaration de type explicite.
Exemple :
$number = 10
$text = "Sample text"
Portée
Les variables peuvent avoir différentes portées, déterminant leur visibilité et leur accessibilité au sein d’un script.
Local : Limité à la portée ou fonction actuelle.
Script : Visible dans tout le script actuel.
Global : Accessible dans l’ensemble de la session PowerShell.
Attribution et modification
Attribution :
Les variables se voient attribuer des valeurs à l’aide de l’opérateur d’attribution (=
).
Exemple :
$myVariable = "New value"
Modification :
Les variables peuvent être modifiées en attribuant de nouvelles valeurs ou en modifiant des valeurs existantes.
Exemple :
$number = $number + 5
Nous allons utiliser ces variables pour effectuer une interpolation de chaîne dans Windows PowerShell.
Interpolation de chaînes dans Windows PowerShell
L’interpolation de chaînes fait référence au processus d’intégration de variables, d’expressions ou de commandes directement au sein des chaînes pour générer un contenu dynamique.
Syntaxe courante :
- Chaînes entre guillemets doubles (
"..."
) : Les chaînes enfermées dans des guillemets doubles permettent une interpolation de chaîne. - Syntaxe d’interpolation :
$variable
,$($expression)
et$(commande)
Interpolation de variables
Comprenons avec un exemple de connexion de chaînes en utilisant l’interpolation de chaînes dans Windows PowerShell.
Code d’exemple :
$company = "XYZ Company"
Write-Output "Welcome to $company"
Dans le script PowerShell ci-dessus, la variable $company
contient la valeur de chaîne XYZ Company
. À l’intérieur des guillemets doubles ""
, Windows PowerShell interpole le nom de la variable de chaîne et affiche le résultat ci-dessous dans la déclaration suivante.
Sortie :
Welcome to XYZ Company
Si nous mettons un nom de variable entre guillemets simples, ''
, cela affichera plutôt le nom de la variable, comme montré ci-dessous.
Code d’exemple :
$company = "XYZ Company"
Write-Output 'Welcome to $company'
Sortie :
Welcome to $company
Cette sortie se produit parce que tout ce qui est enfermé entre guillemets simples traite tout ce qui est à l’intérieur comme une expression littérale. Donc, assurez-vous d’utiliser des guillemets doubles lors de l’interpolation d’une chaîne.
Interpolation d’expressions
$age = 25
Write-Host "In five years, I'll be $($age + 5) years old."
L’interpolation de chaîne, indiquée par $()
, permet l’inclusion de valeurs de variables ou d’expressions dans une chaîne. Dans ce cas, elle calcule dynamiquement l’âge futur en ajoutant 5
à la valeur stockée dans la variable $age
, rendant la sortie dynamique et reflétant l’âge attendu après cinq ans.
Interpolation de commandes
$currentDate = Get-Date
Write-Host "The current date is $(Get-Date)."
Le résultat affichera la date et l’heure actuelles au moment où la ligne Write-Host
est exécutée, incorporant dynamiquement la valeur mise à jour depuis le cmdlet Get-Date
au sein de la chaîne via l’interpolation.
Interpolation de chaînes avec des variables d’environnement dans PowerShell
Les variables d’environnement sont des valeurs nommées dynamiques stockées dans le système d’exploitation, contenant des informations sur l’environnement du système, les préférences utilisateur et les paramètres de configuration.
Les variables d’environnement, représentées par la variable Env:
dans Windows PowerShell, stockent l’environnement et les programmes du système d’exploitation. Ces informations incluent le chemin du système d’exploitation, l’emplacement du répertoire d’installation de Windows, le nombre de processus utilisés par le système d’exploitation, et bien plus encore.
Variables d’environnement courantes :
$env:USERNAME
: Représente le nom d’utilisateur de l’utilisateur actuel.$env:COMPUTERNAME
: Stocke le nom de l’ordinateur.$env:TEMP
: Spécifie le répertoire des fichiers temporaires.$env:PATH
: Contient les chemins des fichiers exécutables du système.
Dans Windows PowerShell, les variables d’environnement peuvent être interpolées dans une chaîne comme d’autres variables standard.
Code d’exemple :
Write-Output "My computer name: $Env:COMPUTERNAME"
Dans le script PowerShell ci-dessus, $Env: COMPUTERNAME
affiche une valeur de variable dans des guillemets doubles et la concatène avec une chaîne.
Sortie :
My computer name: WINDOWS-PC01
Interpolation de chaînes avec des caractères d’échappement dans PowerShell
Bien que nous ayons discuté que nous devrions utiliser des guillemets doubles lors de l’interpolation de chaîne, certains cas où mettre une variable entre guillemets doubles ne fournissent pas les résultats escomptés. Un exemple de cela est les caractères d’échappement.
Un caractère d’échappement est un type de caractère qui évoque une interprétation alternative des caractères suivants dans une séquence de caractères. Les caractères d’échappement sont courants parmi les langages de programmation car certains symboles sont utilisés lorsqu’ils sont compilés de manière programmatique.
Les caractères d’échappement dans PowerShell sont des séquences spéciales utilisées pour représenter des caractères qui peuvent avoir des significations spéciales au sein des chaînes. Ils permettent l’inclusion de caractères spéciaux ou le contrôle du formatage au sein des chaînes.
Caractères d’échappement courants :
- Backtick (`): Utilisé pour échapper des caractères ayant des significations spéciales.
- Guillemet double (
"
): Permet l’interpolation et l’évaluation d’expressions dans les chaînes entre guillemets doubles. - Nouvelle ligne (``n`): Représente un caractère de nouvelle ligne.
- Tabulation (``t`): Insère une tabulation horizontale.
- Retour chariot (``r`): Déplace le curseur au début de la ligne.
Par exemple, dans Windows PowerShell, un signe de dollar $
est l’un des opérateurs les plus courants utilisés pour définir une variable. Nous utiliserons le signe de dollar comme exemple ci-dessous.
Code d’exemple :
$price = 99
Write-Output "Discounted Price: $$price"
Dans le script Windows PowerShell ci-dessus, $price
dans des guillemets doubles ne donne pas la sortie escomptée car l’environnement de script interprète les doubles signes de dollar $$
différemment.
Sortie :
Discounted Price: Discounted Price: $$priceprice
Utilisez le caractère d’échappement de Windows PowerShell pour l’interpolation de chaînes ci-dessous afin d’obtenir la sortie désirée.
Code d’exemple :
$price = 99
Write-Output "Discounted Price: `$$price"
Sortie :
Discounted Price: $99
Interpolation de chaînes utilisant des variables avec des caractères spéciaux dans PowerShell
Comme mentionné, les noms de variables qui commencent par un signe de dollar $
peuvent inclure des caractères alphanumériques et des caractères spéciaux. Les variables dans PowerShell peuvent contenir des caractères spéciaux tels que des backticks (`), des signes de dollar ($
) ou des guillemets ("
).
La meilleure pratique pour définir des variables est d’inclure uniquement des caractères alphanumériques et le caractère de soulignement _
. Les noms de variables qui incluent d’autres caractères spéciaux, y compris les espaces, sont difficiles à utiliser et doivent être évités.
Cependant, cela ne veut pas dire qu’il est impossible d’utiliser des variables avec des caractères spéciaux. Si la situation ne peut pas être évitée, nous pouvons utiliser le signe de dollar et des accolades ${}
pour échapper tous les caractères spéciaux, y compris les espaces, dans un nom de variable.
Code d’exemple :
${this is a variable!} = "Hello"
Write-Output "${this is a variable!} World!"
Sortie :
Hello World!
La variable ${this is a variable!}
, malgré son nom non conventionnel, est créée et sonne la valeur "Hello"
.
L’interpolation de chaîne dans Write-Output
concatène la valeur de la variable avec le texte " World!"
, ce qui donne la sortie "Hello World!"
.
Interpolation de chaînes utilisant un opérateur de sous-expression dans PowerShell
L’opérateur de sous-expression ($()
) dans PowerShell permet l’évaluation d’expressions, de commandes ou de sous-scripts au sein d’une chaîne.
Dans Windows PowerShell, nous pouvons utiliser l’opérateur de sous-expression $()
pour exécuter une expression au sein d’une autre expression comme l’interpolation de chaîne. Nous faisons cela en enfermant l’expression que nous exécutons avec un signe de dollar et des parenthèses ()
.
Code d’exemple :
$num1 = 10
$num2 = 5
Write-Output "$num1 + $num2 = $($num1+$num2)"
Sortie :
10 + 5 = 15
L’interpolation de chaîne inclut les valeurs de $num1
et $num2
en tant que texte (10
et 5
, respectivement) aux côtés du résultat de l’opération arithmétique (15
) obtenu en ajoutant $num1
et $num2
.
Conclusion
L’article explore l’interpolation de chaînes dans PowerShell, permettant un formatage dynamique des chaînes en intégrant des valeurs de variables, des expressions et des commandes au sein des chaînes. Il couvre :
- Variables dans PowerShell : Ces conteneurs contiennent divers types de données sans déclaration de type explicite et suivent des règles de nommage spécifiques.
- Bases de l’interpolation de chaînes : Cela implique l’intégration de
$variables
,$($expressions)
, et$(commands)
au sein de chaînes entre guillemets doubles pour un contenu dynamique. - Exemples d’utilisation :
- Utiliser des variables pour du contenu dynamique au sein de chaînes.
- Incorporer des variables d’environnement (
$Env:VARIABLE_NAME
) pour des informations liées au système. - Employer des caractères d’échappement (`) pour gérer des caractères spéciaux ou le formatage dans les chaînes.
- Créer et utiliser des variables avec des caractères spéciaux ou des espaces en utilisant la syntaxe
${}
. - Tirer parti de l’opérateur de sous-expression
$()
pour des calculs complexes au sein des chaînes.
Comprendre ces techniques d’interpolation de chaîne fournit aux utilisateurs de PowerShell des outils puissants pour la création de chaînes dynamiques, facilitant la lisibilité et la flexibilité dans le formatage des scripts.
Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.
LinkedInArticle connexe - PowerShell String
- Comment convertir une chaîne sécurisée en texte brut dans PowerShell
- Comment extraire une sous-chaîne PowerShell d'une chaîne
- Comment générer des chaînes aléatoires en utilisant PowerShell
- Comment remplacer un texte dans un fichier en utilisant PowerShell
- Comment supprimer les espaces d'une variable en utilisant PowerShell
- Comment trouver la position d'une sous-chaîne dans PowerShell