Comment ajouter une nouvelle ligne à la sortie de commande dans PowerShell

  1. Utiliser `N pour ajouter une nouvelle ligne à la sortie de commande dans PowerShell
  2. Utilisation du séparateur de champ de sortie OFS pour ajouter une nouvelle ligne à la sortie de commande dans PowerShell
  3. Utilisation de [Environment]::NewLine pour ajouter une nouvelle ligne à la sortie de commande dans PowerShell
  4. Utilisation de Out-String pour ajouter une nouvelle ligne à la sortie de commande dans PowerShell
  5. Conclusion
Comment ajouter une nouvelle ligne à la sortie de commande dans PowerShell

PowerShell comprend un ensemble de séquences de caractères spéciaux qui peuvent personnaliser le contenu de la sortie. Les séquences sont communément appelées séquences d’échappement. Elles commencent par le caractère accent grave `` ` et sont sensibles à la casse.

Quelques exemples de séquences d’échappement sont `0, `a, `b, `e, `f`, `n, `r, etc. Les séquences d’échappement ne sont interprétées que lorsqu’elles sont enfermées entre guillemets doubles " ".

Dans cet article, nous explorons différentes techniques pour ajouter une nouvelle ligne à la sortie de commande dans PowerShell. Chacune fournit une approche unique pour atteindre le format de sortie souhaité, offrant flexibilité et contrôle sur l’apparence des sorties de script PowerShell.

Utiliser `N pour ajouter une nouvelle ligne à la sortie de commande dans PowerShell

La séquence d’échappement ``n` est couramment utilisée dans de nombreux langages de programmation, y compris PowerShell, pour représenter un caractère de nouvelle ligne.

Lorsque ``n` est rencontré dans une chaîne, il instruit l’interpréteur de déplacer le curseur au début de la ligne suivante lors de l’affichage du texte.

Dans PowerShell, l’accent grave est utilisé comme caractère d’échappement pour désigner des caractères spéciaux dans les chaînes.

Write-Host "This is line 1`nThis is line 2"

Dans cet exemple, nous utilisons le cmdlet Write-Host pour afficher deux lignes de texte. En utilisant la séquence d’échappement n, nous créons une nouvelle ligne entre "This is line 1" et "This is line 2", réalisant ainsi une séparation claire du contenu.

Sortie :

ajouter une nouvelle ligne à la sortie de la commande dans powershell - sortie 1

Vous pouvez utiliser plusieurs caractères `n pour ajouter plusieurs lignes.

Write-Host "This is line 1`nThis is line 2`n`n`This is line 3"

Nous commençons par afficher "This is line 1", suivi d’un caractère de nouvelle ligne en utilisant l’accent grave (``n), qui indique à PowerShell de passer à la ligne suivante. Ensuite, nous affichons “This is line 2”` sur une nouvelle ligne en utilisant à nouveau le caractère de nouvelle ligne.

Après cela, nous incluons deux caractères de nouvelle ligne consécutifs (``n) en utilisant des accents graves, créant une ligne blanche entre “This is line 2”et“This is line 3”. Enfin, nous affichons “This is line 3”` sur une nouvelle ligne.

Sortie :

ajoutez une nouvelle ligne à la sortie de la commande dans powershell - sortie 2

Utilisation du séparateur de champ de sortie OFS pour ajouter une nouvelle ligne à la sortie de commande dans PowerShell

Dans PowerShell, le séparateur de champ de sortie (OFS) est une variable spéciale qui détermine comment les éléments d’un tableau sont séparés lorsqu’ils sont convertis en chaîne. Par défaut, PowerShell sépare les éléments du tableau par un espace.

Cependant, vous pouvez modifier la valeur de la variable OFS pour spécifier un séparateur différent, comme un caractère de nouvelle ligne, qui est représenté par la séquence d’échappement n.

Tout d’abord, vous devez définir un séparateur dans la variable OFS.

$OFS = "`n`n"
$color = 'red', 'blue', 'green', 'yellow'
"$($color)"

Dans cet exemple de code, nous définissons d’abord la variable OFS à deux ``n, indiquant qu'un caractère de nouvelle ligne doit être utilisé pour séparer les éléments dans la sortie. Ensuite, nous définissons un tableau appelé $color` contenant quatre chaînes de couleur.

Lorsque nous utilisons la syntaxe d’interpolation de chaîne "$($color)", PowerShell convertit implicitement le tableau en chaîne, séparant chaque élément avec la valeur OFS, ce qui permet à chaque couleur d’être affichée sur une double nouvelle ligne.

Sortie :

ajouter une nouvelle ligne à la sortie de commande dans powershell - sortie 3

Utilisation de [Environment]::NewLine pour ajouter une nouvelle ligne à la sortie de commande dans PowerShell

Dans PowerShell, la méthode [Environment]::NewLine est un moyen pratique d’obtenir la séquence de caractère de nouvelle ligne appropriée pour l’environnement actuel du système d’exploitation. Cette méthode renvoie une chaîne contenant la séquence de nouvelle ligne (\n pour les systèmes basés sur Unix et \r\n pour les systèmes Windows).

En utilisant cette méthode, vous pouvez garantir que votre script PowerShell produit une sortie avec les caractères de nouvelle ligne corrects, ce qui le rend indépendant de la plateforme et compatible à travers différents environnements.

$color = 'red', 'blue', 'green', 'yellow'
$new = [Environment]::NewLine
$color | foreach { "$_$new" }

Dans cet exemple de code, nous définissons d’abord un tableau appelé $color contenant quatre chaînes de couleur. Ensuite, nous utilisons [Environment]::NewLine pour récupérer la séquence de caractère de nouvelle ligne et la stocker dans la variable $new.

Ensuite, nous envoyons le tableau $color à Sort-Object pour trier les couleurs par ordre alphabétique. Enfin, nous itérons sur chaque couleur triée en utilisant foreach, en concaténant chaque couleur avec le caractère de nouvelle ligne stocké dans $new, ce qui donne une sortie triée avec chaque couleur sur une nouvelle ligne.

Sortie :

ajouter une nouvelle ligne à la sortie de la commande dans powershell - sortie 5

Utilisation de Out-String pour ajouter une nouvelle ligne à la sortie de commande dans PowerShell

Dans PowerShell, le cmdlet Out-String convertit les objets d’entrée en une seule chaîne, ce qui peut être utile pour formater la sortie de commande. Par défaut, Out-String ajoute un caractère de nouvelle ligne (``n`) à chaque objet, vous permettant d’ajouter facilement de nouvelles lignes à la sortie de la commande.

Cette méthode est particulièrement utile lorsque vous souhaitez vous assurer que chaque élément de la sortie est affiché sur une ligne séparée, améliorant la lisibilité et l’organisation.

$color = 'red', 'blue', 'green', 'yellow'
$color | Out-String

Dans cet extrait de code, nous définissons d’abord un tableau appelé $color contenant quatre chaînes de couleur. Ensuite, nous utilisons la méthode [Environment]::NewLine pour récupérer la séquence de caractère de nouvelle ligne appropriée pour l’environnement actuel et la stockons dans la variable $new.

Ensuite, nous itérons sur chaque élément du tableau $color en utilisant la boucle foreach. À l’intérieur de la boucle, nous concaténons chaque chaîne de couleur avec le caractère de nouvelle ligne stocké dans $new, garantissant que chaque couleur est affichée sur une nouvelle ligne dans la sortie de la commande.

Sortie :

ajouter une nouvelle ligne à la sortie de la commande dans powershell - sortie 6

Conclusion

PowerShell fournit plusieurs méthodes efficaces pour ajouter une nouvelle ligne à la sortie de commande, améliorant la lisibilité et l’organisation. Que vous utilisiez des séquences d’échappement comme ``n, exploitiez la méthode [Environment]::NewLinepour des caractères de nouvelle ligne indépendants de la plateforme, ou personnalisiez la variableOFS` pour le formatage de sortie de tableaux, PowerShell offre des solutions polyvalentes pour répondre à divers besoins de script.

En comprenant et en mettant en œuvre ces techniques, les auteurs de scripts PowerShell peuvent créer des sorties visuellement plus attrayantes et informatives, améliorant l’expérience globale de l’utilisateur et l’efficacité de leurs scripts.

Vous aimez nos tutoriels ? Abonnez-vous à DelftStack sur YouTube pour nous aider à créer davantage de tutoriels vidéo de haute qualité. Abonnez-vous
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website