Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Breve descrição
Descreve as sequências de caracteres especiais que controlam como o PowerShell interpreta os próximos caracteres na sequência.
Descrição longa
O PowerShell dá suporte a um conjunto de sequências de caracteres especiais que são usadas para representar caracteres que não fazem parte do conjunto de caracteres padrão. As sequências são comumente conhecidas como sequências de fuga .
As sequências de fuga começam com o caractere backtick, conhecido como acento grave (ASCII 96), e diferenciam maiúsculas de minúsculas. O caractere backtick também pode ser referido como o personagem de fuga.
As sequências de escape só são interpretadas quando contidas em cadeias de caracteres com aspas duplas (").
O PowerShell reconhece estas sequências de escape:
| Sequência | Descrição |
|---|---|
`0 |
Nulo |
`a |
Alerta |
`b |
Espaço traseiro |
`e |
Escape (adicionado no PowerShell 6) |
`f |
Feed de formulários |
`n |
Nova linha |
`r |
Retorno de carro |
`t |
Separador horizontal |
`u{x} |
Sequência de escape Unicode (adicionada ao PowerShell 6) |
`v |
Separador vertical |
O PowerShell também tem um token especial para marcar onde você deseja que a análise pare. Todos os caracteres que seguem esse token são usados como valores literais que não são interpretados.
Tokens de análise especiais:
| Sequência | Descrição |
|---|---|
-- |
Tratar os valores restantes como argumentos e não parâmetros |
--% |
Pare de analisar qualquer coisa que se siga |
~ |
Til |
Nulo ('0)
O caractere nulo (`0) aparece como um espaço vazio na saída do PowerShell.
Essa funcionalidade permite que você use o PowerShell para ler e processar arquivos de texto que usam caracteres nulos, como terminação de cadeia de caracteres ou indicadores de terminação de registro. O caractere especial nulo não é equivalente à variável $null, que armazena um valor de nulo.
Alerta ('a)
O caractere de alerta (`a) envia um sinal sonoro para o alto-falante do computador.
Você pode usar esse caractere para avisar um usuário sobre uma ação iminente. O exemplo a seguir envia dois sinais de bipe para o alto-falante do computador local.
for ($i = 0; $i -le 1; $i++){"`a"}
Espaço traseiro ('b)
O caractere backspace (`b) move o cursor para trás um caractere, mas não exclui nenhum caractere.
O exemplo escreve a palavra de backup e, em seguida, move o cursor para trás duas vezes. Em seguida, na nova posição, escreve um espaço seguido da palavra .
"backup`b`b out"
back out
Fuga ('e)
Observação
Esse caractere especial foi adicionado no PowerShell 6.0.
O caractere de escape (`e) é mais comumente usado para especificar uma sequência de terminal virtual (sequência de escape ANSI) que modifica a cor do texto e outros atributos de texto, como negrito e sublinhado. Essas sequências também podem ser usadas para posicionamento e rolagem do cursor. O host do PowerShell deve oferecer suporte a sequências de terminal virtual. Você pode verificar o valor booleano de $Host.UI.SupportsVirtualTerminal para determinar se essas sequências ANSI são suportadas.
Para obter mais informações sobre sequências de escape ANSI, consulte o código de escape ANSI artigo na Wikipedia.
O exemplo a seguir gera texto com uma cor de primeiro plano verde.
$fgColor = 32 # green
"`e[${fgColor}mGreen text`e[0m"
Green text
Alimentação de formulários ('f)
O caractere de alimentação de formulário (`f) é uma instrução de impressão que ejeta a página atual e continua a impressão na página seguinte. O caractere de alimentação de formulário afeta apenas documentos impressos. Isso não afeta a saída da tela.
Nova linha ('n)
O novo caractere de linha (`n) insere uma quebra de linha imediatamente após o caractere.
Este exemplo mostra como usar o novo caractere de linha para criar quebras de linha em um comando Write-Host.
"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.
Retorno de carro ('r)
O caractere de retorno de carro (`r) move o cursor de saída para o início da linha atual e continua escrevendo. Todos os caracteres na linha atual são substituídos.
Neste exemplo, o texto antes do retorno de carro é substituído.
Write-Host "These characters are overwritten.`rI want this text instead "
Observe que o texto antes do caractere `r não é excluído, ele é substituído.
I want this text instead written.
Separador horizontal ('t)
O caractere de tabulação horizontal (`t) avança para a próxima parada de tabulação e continua escrevendo nesse ponto. Por padrão, o console do PowerShell tem uma parada de tabulação a cada oitavo espaço.
Este exemplo insere duas guias entre cada coluna.
"Column1`t`tColumn2`t`tColumn3"
Column1 Column2 Column3
Caractere Unicode ('u{x})
Observação
Esse caractere especial foi adicionado no PowerShell 6.0.
A sequência de escape Unicode (`u{x}) permite especificar qualquer caractere Unicode pela representação hexadecimal de seu ponto de código. Isso inclui caracteres Unicode acima do Plano Multilíngüe Básico (>0xFFFF), que inclui caracteres emoji, como o polegar para cima caractere (`u{1F44D}). A sequência de escape Unicode requer pelo menos um dígito hexadecimal e suporta até seis dígitos hexadecimais. O valor hexadecimal máximo para a sequência é 10FFFF.
Este exemplo gera a saída da seta para cima símbolo (↕).
"`u{2195}"
Separador vertical ('v)
O caractere de tabulação vertical (`v) avança para a próxima parada de tabulação vertical e grava a saída restante nesse ponto. A renderização da guia vertical depende do dispositivo e do terminal.
Write-Host "There is a vertical tab`vbetween the words."
Os exemplos a seguir mostram a saída renderizada da guia vertical em alguns ambientes comuns.
O aplicativo host do Console do Windows interpreta (`v) como um caractere especial sem espaçamento extra adicionado.
There is a vertical tab♂between the words.
O Terminal do Windows renderiza o caractere de tabulação vertical como um retorno de carro e alimentação de linha. O restante da saída é impresso no início da próxima linha.
There is a vertical tab
between the words.
Em impressoras ou em um console baseado em Unix, o caractere de tabulação vertical avança para a próxima linha e grava a saída restante nesse ponto.
There is a vertical tab
between the words.
Continuação da linha
O caractere backtick também pode ser usado no final de uma linha como um sinal para o analisador do PowerShell de que o comando continua na próxima linha. Para obter mais informações, consulte about_Parsing.
O token de fim de parâmetros (--)
O token de fim de parâmetros (--) indica que todos os argumentos que o seguem devem ser passados em sua forma real como se aspas duplas fossem colocadas em torno deles. Por exemplo, usando -- você pode gerar a saída da cadeia de caracteres -InputObject sem usar aspas ou interpretá-la como um parâmetro:
Write-Output -- -InputObject
-InputObject
Esta é uma convenção especificada na especificação POSIX Shell and Utilities.
Token de parada de análise (--%)
O token stop-parsing (--%) impede que o PowerShell interprete cadeias de caracteres como comandos e expressões do PowerShell. Isso permite que essas cadeias de caracteres sejam passadas para outros programas para interpretação.
Coloque o token de análise de parada após o nome do programa e antes dos argumentos do programa que podem causar erros.
Neste exemplo, o comando Icacls usa o token stop-parsing.
icacls X:\VMS --% /grant Dom\HVAdmin:(CI)(OI)F
O PowerShell envia a seguinte cadeia de caracteres para Icacls.
X:\VMS /grant Dom\HVAdmin:(CI)(OI)F
Neste segundo exemplo, passamos a variável $HOME para o comando cmd.exe /c echo duas vezes.
cmd.exe /c echo $HOME --% $HOME
A saída mostra que a primeira instância do $HOME é interpretada pelo PowerShell para que o valor da variável seja passado para cmd. A segunda instância de $HOME vem após o token de análise de parada, portanto, ele é passado como uma cadeia de caracteres literal.
C:\Users\username $HOME
Para obter mais informações sobre o token de análise de parada, consulte about_Parsing.
Til (~)
O caractere til (~) tem um significado especial no PowerShell. Quando é usado com comandos do PowerShell no início de um caminho, o PowerShell expande o caractere til para o diretório base do usuário. Se você usar o caractere til em qualquer outro lugar em um caminho, ele será tratado como um caractere literal.
Para obter mais informações sobre o token de análise de parada, consulte about_Parsing.