Informazioni sui caratteri specialiAbout Special Characters

Breve descrizioneShort description

Descrive le sequenze di caratteri speciali che controllano il modo in cui PowerShell interpreta i caratteri successivi nella sequenza.Describes the special character sequences that control how PowerShell interprets the next characters in the sequence.

Descrizione lungaLong description

PowerShell supporta un set di sequenze di caratteri speciali che vengono usate per rappresentare i caratteri che non fanno parte del set di caratteri standard.PowerShell supports a set of special character sequences that are used to represent characters that aren't part of the standard character set. Le sequenze sono comunemente note come sequenze di escape.The sequences are commonly known as escape sequences.

Le sequenze di escape iniziano con il carattere di apice inverso, noto come accento grave (ASCII 96) e con distinzione tra maiuscole e minuscole.Escape sequences begin with the backtick character, known as the grave accent (ASCII 96), and are case-sensitive. Il carattere di apice inverso può anche essere definito carattere di escape.The backtick character can also be referred to as the escape character.

Le sequenze di escape vengono interpretate solo quando sono contenute in stringhe con virgolette doppie ( " ).Escape sequences are only interpreted when contained in double-quoted (") strings.

PowerShell riconosce le sequenze di escape seguenti:PowerShell recognizes these escape sequences:

SequenzaSequence DescrizioneDescription
`0 NullNull
`a AvvisoAlert
`b BackspaceBackspace
`e Carattere speciale di escapeEscape
`f Avanzamento cartaForm feed
`n Nuova rigaNew line
`r Ritorno a capoCarriage return
`t Tabulazione orizzontaleHorizontal tab
`u{x} Sequenza di escape UnicodeUnicode escape sequence
`v Tabulazione verticaleVertical tab

PowerShell ha anche un token speciale per contrassegnare il punto in cui si vuole arrestare l'analisi.PowerShell also has a special token to mark where you want parsing to stop. Tutti i caratteri che seguono questo token vengono usati come valori letterali che non vengono interpretati.All characters that follow this token are used as literal values that aren't interpreted.

Token di analisi speciale:Special parsing token:

SequenzaSequence DescrizioneDescription
--% Interrompi analisi di qualsiasi elemento che segueStop parsing anything that follows

Null (' 0)Null (`0)

Il carattere null ( `0 ) viene visualizzato come spazio vuoto nell'output di PowerShell.The null (`0) character appears as an empty space in PowerShell output. Questa funzionalità consente di usare PowerShell per leggere ed elaborare i file di testo che usano caratteri null, come la terminazione della stringa o gli indicatori di terminazione del record.This functionality allows you to use PowerShell to read and process text files that use null characters, such as string termination or record termination indicators. Il carattere speciale null non è equivalente alla $null variabile, che archivia un valore null .The null special character isn't equivalent to the $null variable, which stores a null value.

Avviso (' a)Alert (`a)

Il carattere Alert ( `a ) Invia un segnale acustico all'altoparlante del computer.The alert (`a) character sends a beep signal to the computer's speaker. È possibile usare questo carattere per avvisare un utente di un'azione imminente.You can use this character to warn a user about an impending action. Nell'esempio seguente vengono inviati due segnali acustici all'altoparlante del computer locale.The following example sends two beep signals to the local computer's speaker.

for ($i = 0; $i -le 1; $i++){"`a"}

BACKSPACE (' b)Backspace (`b)

Il carattere backspace ( `b ) sposta di nuovo il cursore di un carattere, ma non elimina i caratteri.The backspace (`b) character moves the cursor back one character, but it doesn't delete any characters.

Nell'esempio viene scritto il backup di Word, quindi il cursore viene nuovamente spostato due volte.The example writes the word backup and then moves the cursor back twice. Quindi, nella nuova posizione, scrive uno spazio seguito dalla parola out.Then, at the new position, writes a space followed by the word out.

"backup`b`b out"
back out

Escape (' e)Escape (`e)

Il carattere escape ( `e ) viene in genere usato per specificare una sequenza di terminali virtuali (sequenza di escape ANSI) che modifica il colore del testo e di altri attributi di testo, ad esempio in grassetto e sottoline.The escape (`e) character is most commonly used to specify a virtual terminal sequence (ANSI escape sequence) that modifies the color of text and other text attributes such as bolding and underlining. Queste sequenze possono essere utilizzate anche per il posizionamento e lo scorrimento del cursore.These sequences can also be used for cursor positioning and scrolling. L'host di PowerShell deve supportare le sequenze di terminali virtuali.The PowerShell host must support virtual terminal sequences. È possibile controllare il valore booleano di $Host.UI.SupportsVirtualTerminal per determinare se queste sequenze ANSI sono supportate.You can check the boolean value of $Host.UI.SupportsVirtualTerminal to determine if these ANSI sequences are supported.

Per ulteriori informazioni sulle sequenze di escape ANSI, vedere ANSI_escape_code.For more information about ANSI escape sequences, see ANSI_escape_code.

Nell'esempio seguente viene restituito il testo con un colore di primo piano verde.The following example outputs text with a green foreground color.

$fgColor = 32 # green
"`e[${fgColor}mGreen text`e[0m"
Green text

Feed form (' f)Form feed (`f)

Il carattere feed form ( `f ) è un'istruzione di stampa che espelle la pagina corrente e continua la stampa nella pagina successiva.The form feed (`f) character is a print instruction that ejects the current page and continues printing on the next page. Il carattere di avanzamento del modulo interessa solo i documenti stampati.The form feed character only affects printed documents. Non influisce sull'output dello schermo.It doesn't affect screen output.

Nuova riga (' n)New line (`n)

Il carattere di nuova riga ( `n ) inserisce un'interruzioni di riga subito dopo il carattere.The new line (`n) character inserts a line break immediately after the character.

Questo esempio illustra come usare il carattere di nuova riga per creare interruzioni di riga in un Write-Host comando.This example shows how to use the new line character to create line breaks in a Write-Host command.

"There are two line breaks to create a blank line`n`nbetween the words."
There are two line breaks to create a blank line

between the words.

Ritorno a capo (' r)Carriage return (`r)

Il carattere di ritorno `r a capo () sposta il cursore di output all'inizio della riga corrente e continua la scrittura.The carriage return (`r) character moves the output cursor to the beginning of the current line and continues writing. Tutti i caratteri nella riga corrente vengono sovrascritti.Any characters on the current line are overwritten.

In questo esempio, il testo prima che il ritorno a capo venga sovrascritto.In this example, the text before the carriage return is overwritten.

Write-Host "These characters are overwritten.`rI want this text instead "

Si noti che il testo prima del `r carattere non viene eliminato, viene sovrascritto.Notice that the text before the `r character is not deleted, it is overwritten.

I want this text instead written.

Tabulazione orizzontale (' t)Horizontal tab (`t)

Il carattere di tabulazione orizzontale ( `t ) passa alla successiva tabulazione e continua la scrittura in quel punto.The horizontal tab (`t) character advances to the next tab stop and continues writing at that point. Per impostazione predefinita, la console di PowerShell include una tabulazione in ogni ottavo spazio.By default, the PowerShell console has a tab stop at every eighth space.

In questo esempio vengono inserite due schede tra le singole colonne.This example inserts two tabs between each column.

"Column1`t`tColumn2`t`tColumn3"
Column1         Column2         Column3

Carattere Unicode (' u {x})Unicode character (`u{x})

La sequenza di escape Unicode ( `u{x} ) consente di specificare qualsiasi carattere Unicode dalla rappresentazione esadecimale del relativo punto di codice.The Unicode escape sequence (`u{x}) allows you to specify any Unicode character by the hexadecimal representation of its code point. Sono inclusi i caratteri Unicode sopra il piano multilingue di base (> 0xFFFF ), che include i caratteri emoji come il carattere thumbs up ( `u{1F44D} ).This includes Unicode characters above the Basic Multilingual Plane (> 0xFFFF) which includes emoji characters such as the thumbs up (`u{1F44D}) character. La sequenza di escape Unicode richiede almeno una cifra esadecimale e supporta fino a sei cifre esadecimali.The Unicode escape sequence requires at least one hexadecimal digit and supports up to six hexadecimal digits. Il valore esadecimale massimo per la sequenza è 10FFFF .The maximum hexadecimal value for the sequence is 10FFFF.

In questo esempio viene restituito il simbolo freccia giù (↕).This example outputs the up down arrow (↕) symbol.

"`u{2195}"

Tabulazione verticale (' v)Vertical tab (`v)

Il carattere di tabulazione orizzontale ( `v ) avanza fino alla tabulazione verticale successiva e scrive l'output rimanente in quel punto.The horizontal tab (`v) character advances to the next vertical tab stop and writes the remaining output at that point. Questa operazione non ha alcun effetto sulla console di Windows predefinita.This has no effect in the default Windows console.

Write-Host "There is a vertical tab`vbetween the words."

Nell'esempio seguente viene illustrato l'output che si otterrebbe su una stampante o in un altro host console.The following example shows the output you would get on a printer or in a different console host.

There is a vertical tab
                       between the words.

Stop-analisi del token (--%)Stop-parsing token (--%)

Il token stop-parsing ( --% ) impedisce a PowerShell di interpretare le stringhe come comandi ed espressioni di PowerShell.The stop-parsing (--%) token prevents PowerShell from interpreting strings as PowerShell commands and expressions. Ciò consente di passare le stringhe ad altri programmi per l'interpretazione.This allows those strings to be passed to other programs for interpretation.

Inserire il token stop-parsing dopo il nome del programma e prima degli argomenti del programma che potrebbero causare errori.Place the stop-parsing token after the program name and before program arguments that might cause errors.

In questo esempio, il Icacls comando usa il token stop-parsing.In this example, the Icacls command uses the stop-parsing token.

icacls X:\VMS --% /grant Dom\HVAdmin:(CI)(OI)F

PowerShell Invia la stringa seguente a Icacls .PowerShell sends the following string to Icacls.

X:\VMS /grant Dom\HVAdmin:(CI)(OI)F

Di seguito è riportato un altro esempio.Here is another example. La funzione showArgs restituisce i valori passati.The showArgs function outputs the values passed to it. In questo esempio la variabile denominata viene passata $HOME due volte alla funzione.In this example, we pass the variable named $HOME to the function twice.

function showArgs {
  "`$args = " + ($args -join '|')
}

showArgs $HOME --% $HOME

Nell'output è possibile vedere che, per il primo parametro, la variabile $HOME viene interpretata da PowerShell, in modo che il valore della variabile venga passato alla funzione. Il secondo uso di $HOME viene eseguito dopo il token di analisi Stop, quindi la stringa "$Home" viene passata alla funzione senza interpretazione.The second use of $HOME comes after the stop-parsing token, so the string "$HOME" is passed to the function without interpretation.

$args = C:\Users\username|--%|$HOME

Per ulteriori informazioni sul token stop-parsing, vedere about_Parsing.For more information about the stop-parsing token, see about_Parsing.

Vedere ancheSee also

about_Quoting_Rulesabout_Quoting_Rules