Come aggiungere una nuova riga all'output del comando in PowerShell
-
Usa
`N
per Aggiungere una Nuova Riga all’Output dei Comandi in PowerShell -
Utilizzando il Separatore di Campo di Output
OFS
per Aggiungere una Nuova Riga all’Output dei Comandi in PowerShell -
Utilizzando
[Environment]::NewLine
per Aggiungere una Nuova Riga all’Output dei Comandi in PowerShell -
Utilizzando
Out-String
per Aggiungere una Nuova Riga all’Output dei Comandi in PowerShell - Conclusione

PowerShell include un insieme di sequenze di caratteri speciali che possono personalizzare il contenuto dell’output. Le sequenze sono comunemente note come sequenze di escape. Iniziano con il carattere backtick `` ` e sono case-sensitive.
Alcuni esempi di sequenze di escape sono `0
, `a
, `b
, `e
, `f`
, `n
, `r
, ecc. Le sequenze di escape vengono interpretate solo se racchiuse tra virgolette doppie " "
.
In questo articolo, esploriamo diverse tecniche per aggiungere una nuova riga all’output dei comandi in PowerShell. Ognuna offre un approccio unico per ottenere il formato di output desiderato, offrendo flessibilità e controllo sull’aspetto degli output degli script PowerShell.
Usa `N
per Aggiungere una Nuova Riga all’Output dei Comandi in PowerShell
La sequenza di escape ``n` è comunemente utilizzata in molti linguaggi di programmazione, incluso PowerShell, per rappresentare un carattere di nuova riga.
Quando ``n` viene incontrato all’interno di una stringa, istruisce l’interprete a spostare il cursore all’inizio della riga successiva quando visualizza il testo.
In PowerShell, il backtick è usato come carattere di escape per denotare caratteri speciali all’interno delle stringhe.
Write-Host "This is line 1`nThis is line 2"
In questo esempio, utilizziamo il cmdlet Write-Host per visualizzare due righe di testo. Utilizzando la sequenza di escape ``n, creiamo una nuova riga tra
“This is line 1”e
“This is line 2”`, ottenendo così una chiara separazione del contenuto.
Output:
Puoi utilizzare più caratteri `n
per aggiungere più righe.
Write-Host "This is line 1`nThis is line 2`n`n`This is line 3"
Iniziamo visualizzando "This is line 1"
, seguito da un carattere di nuova riga utilizzando il backtick (``n), che istruisce PowerShell a passare alla riga successiva. Poi, visualizziamo
“This is line 2”` su una nuova riga usando di nuovo il carattere di nuova riga.
Dopo di che, includiamo due caratteri di nuova riga consecutivi (``n) utilizzando i backtick, creando una riga vuota tra
“This is line 2”e
“This is line 3”. Infine, visualizziamo
“This is line 3”` su una nuova riga.
Output:
Utilizzando il Separatore di Campo di Output OFS
per Aggiungere una Nuova Riga all’Output dei Comandi in PowerShell
In PowerShell, il Separator di Campo di Output (OFS
) è una variabile speciale che determina come gli elementi in un array vengono separati quando vengono convertiti in una stringa. Per impostazione predefinita, PowerShell separa gli elementi dell’array con uno spazio.
Tuttavia, puoi modificare il valore della variabile OFS
per specificare un separatore diverso, come un carattere di nuova riga, che è rappresentato dalla sequenza di escape ``n`.
Innanzitutto, devi definire un separatore nella variabile OFS
.
$OFS = "`n`n"
$color = 'red', 'blue', 'green', 'yellow'
"$($color)"
In questo esempio di codice, impostiamo prima la variabile OFS
su due ``n, indicando che un carattere di nuova riga dovrebbe essere utilizzato per separare gli elementi nell'output. Poi, definiamo un array chiamato
$color` contenente quattro stringhe di colori.
Quando utilizziamo la sintassi di interpolazione delle stringhe "$($color)"
, PowerShell converte implicitamente l’array in una stringa, separando ogni elemento con il valore OFS
, risultando in ogni colore visualizzato su una doppia nuova riga.
Output:
Utilizzando [Environment]::NewLine
per Aggiungere una Nuova Riga all’Output dei Comandi in PowerShell
In PowerShell, il metodo [Environment]::NewLine
è un modo conveniente per recuperare la sequenza di carattere di nuova riga appropriata per l’attuale ambiente del sistema operativo. Questo metodo restituisce una stringa contenente la sequenza di nuova riga (\n
per i sistemi basati su Unix e \r\n
per i sistemi Windows).
Utilizzando questo metodo, puoi assicurarti che il tuo script PowerShell produca output con i caratteri di nuova riga corretti, rendendolo indipendente dalla piattaforma e compatibile con diversi ambienti.
$color = 'red', 'blue', 'green', 'yellow'
$new = [Environment]::NewLine
$color | foreach { "$_$new" }
In questo esempio di codice, definiamo prima un array chiamato $color
contenente quattro stringhe di colori. Poi, utilizziamo [Environment]::NewLine
per recuperare la sequenza di carattere di nuova riga e memorizzarla nella variabile $new
.
Successivamente, pipe l’array $color
a Sort-Object
per ordinare i colori in ordine alfabetico. Infine, iteriamo su ogni colore ordinato utilizzando foreach
, concatenando ogni colore con il carattere di nuova riga memorizzato in $new
, risultando in un output ordinato con ogni colore su una nuova riga.
Output:
Utilizzando Out-String
per Aggiungere una Nuova Riga all’Output dei Comandi in PowerShell
In PowerShell, il cmdlet Out-String
converte gli oggetti di input in una singola stringa, il che può essere utile per formattare l’output dei comandi. Per impostazione predefinita, Out-String
aggiunge un carattere di nuova riga (``n`) a ciascun oggetto, permettendoti di aggiungere facilmente nuove righe all’output dei comandi.
Questo metodo è particolarmente utile quando vuoi assicurarti che ogni elemento nell’output venga visualizzato su una riga separata, migliorando la leggibilità e l’organizzazione.
$color = 'red', 'blue', 'green', 'yellow'
$color | Out-String
In questo frammento di codice, definiamo prima un array chiamato $color
contenente quattro stringhe di colori. Poi, utilizziamo il metodo [Environment]::NewLine
per recuperare la sequenza di carattere di nuova riga appropriata per l’attuale ambiente e memorizzarla nella variabile $new
.
Successivamente, iteriamo su ogni elemento dell’array $color
utilizzando il ciclo foreach
. All’interno del ciclo, concateniamo ciascuna stringa di colore con il carattere di nuova riga memorizzato in $new
, assicurandoci che ogni colore venga visualizzato su una nuova riga nell’output dei comandi.
Output:
Conclusione
PowerShell fornisce diversi metodi efficaci per aggiungere una nuova riga all’output dei comandi, migliorando la leggibilità e l’organizzazione. Che tu stia utilizzando sequenze di escape come ``n, sfruttando il metodo
[Environment]::NewLineper caratteri di nuova riga indipendenti dalla piattaforma, o personalizzando la variabile
OFS` per la formattazione dell’output degli array, PowerShell offre soluzioni versatili per soddisfare varie esigenze di scripting.
Comprendendo e implementando queste tecniche, gli autori di script PowerShell possono creare output più gradevoli e informativi, migliorando l’esperienza complessiva dell’utente e l’efficienza dei loro script.