Partilhar via


sobre_Palavras-chave_de_Linguagem

Breve descrição

Descreve as palavras-chave na linguagem de script do PowerShell.

Descrição longa

O PowerShell tem as seguintes palavras-chave de idioma. Para mais informações, consulte o tópico sobre a palavra-chave e as informações que seguem a tabela.

Palavra-chave Referência
begin sobre_Funções, sobre_Funções_Avançadas
break about_Break, about_Trap
catch sobre_Tentar_Apanhamento_Finalmente
class about_Classes
clean sobre_Funções, sobre_Funções_Métodos_Avançados
continue sobre_Continuar, sobre_Armadilha
data sobre_Secções_de_Dados
define Reservado para uso futuro
do sobre_Do, sobre_While
dynamicparam about_Functions_Advanced_Parameters
else about_If
elseif about_If
end sobre_Funções, sobre_Funções_Métodos_Avançados
enum about_Enum
exit Descrito neste tópico
filter about_Functions
finally sobre_Tentar_Apanhamento_Finalmente
for sobre_Para
foreach about_Foreach
from Reservado para uso futuro
function sobre_Funções, sobre_Funções_Avançadas
hidden sobre_Hidden
if about_If
in about_Foreach
param about_Functions
process sobre_Funções, sobre_Funções_Avançadas
return about_Return
static about_Classes
switch sobre_Comutador
throw about_Throw, about_Functions_Advanced_Methods
trap about_Trap, about_Breakabout_Try_Catch_Finally
try sobre_Tentar_Apanhamento_Finalmente
until about_Do
using sobre_Usar, sobre_Classes
var Reservado para uso futuro
while sobre_While, sobre_Do

As seguintes palavras-chave são usadas pelos fluxos de trabalho do PowerShell:

  • inlinescript
  • parallel
  • sequence
  • workflow

Os fluxos de trabalho do PowerShell são suportados apenas no PowerShell 5.1. Para obter mais informações sobre fluxos de trabalho, consulte executando comandos do PowerShell em um fluxo de trabalho.

begin

Especifica uma parte do corpo de uma função, juntamente com as palavras-chave dynamicparam, processe end. A lista de instruções begin é executada uma vez antes de qualquer objeto ser recebido do pipeline.

Sintaxe:

function <name> {
    dynamicparam {<statement list>}
    begin {<statement list>}
    process {<statement list>}
    end {<statement list>}
}

break

Faz com que um script saia de um loop.

Sintaxe:

while (<condition>) {
   <statements>
   ...

   break
   ...

   <statements>
}

catch

Especifica uma lista de instruções a ser executada se ocorrer um erro na lista de instruções try que a acompanha. Um tipo de erro requer colchetes. O segundo par de colchetes indica que o tipo de erro é opcional.

Sintaxe:

try {<statement list>}
catch [[<error type>]] {<statement list>}

class

Especifica uma nova classe no PowerShell.

Sintaxe:

class <class-name> {
    [[hidden] [static] <property-definition> ...]
    [<class-name>([argument-list>]) {<constructor-statement-list>} ...]
    [[hidden] [static] <method-definition> ...]
}

clean

A palavra-chave clean foi adicionada no PowerShell 7.3. A palavra-chave define um bloco de código que é garantido para ser executado após os blocos begin, process e end de uma função. Ao contrário do bloco end, o bloco clean é sempre executado, mesmo quando há um erro de encerramento em um dos outros blocos.

continue

Faz com que um script pare de executar um loop e volte para a condição. Se a condição for atendida, o script iniciará o loop novamente.

Sintaxe:

while (<condition>) {
   <statements>
   ...

   continue
   ...

   <statements>
}

data

Em um script, define uma seção que isola dados da lógica de script. Também pode incluir instruções if e alguns comandos limitados.

Sintaxe:

data <variable> [-SupportedCommand <cmdlet-name>] {<permitted content>}

do

Usado com a palavra-chave while ou until como uma estrutura de repetição. O PowerShell executa a lista de instruções pelo menos uma vez, ao contrário de um loop que usa while.

Sintaxe para while:

do {<statement list>} while (<condition>)

Sintaxe para until:

do {<statement list>} until (<condition>)

dynamicparam

Especifica uma parte do corpo de uma função, juntamente com as palavras-chave begin, processe end. Parâmetros dinâmicos são adicionados em tempo de execução.

Sintaxe:

function <name> {
   dynamicparam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

else

Usado com a palavra-chave if para especificar a lista de instruções padrão.

Sintaxe:

if (<condition>) {<statement list>}
else {<statement list>}

elseif

Usado com as palavras-chave if e else para especificar condicionais adicionais. A palavra-chave else é opcional.

Sintaxe:

if (<condition>) {<statement list>}
elseif (<condition>) {<statement list>}
else {<statement list>}

end

Especifica uma parte do corpo de uma função, juntamente com as palavras-chave dynamicparam, begine end. A lista de instruções end é executada uma vez depois que todos os objetos foram recebidos do pipeline.

Sintaxe:

function <name> {
   dynamicparam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

enum

enum é usado para declarar uma enumeração; Um tipo distinto que consiste em um conjunto de rótulos nomeados chamado Lista de Enumeradores.

Sintaxe:

enum <enum-name> {
    <label> [= <int-value>]
    ...
}

exit

Faz com que o PowerShell saia de um script ou de uma instância do PowerShell.

Sintaxe:

exit
exit <exitcode>

Quando você usa pwsh com o parâmetro File, o próprio arquivo .ps1 (script) deve incluir instruções para lidar com quaisquer erros ou exceções que ocorram durante a execução do script. Você só deve usar a instrução exit para indicar o status pós-execução do script.

No Windows, qualquer número entre [int]::MinValue e [int]::MaxValue é permitido.

No Unix, apenas números positivos entre [byte]::MinValue e [byte]::MaxValue são permitidos. Um número negativo no intervalo de -1 a -255 é automaticamente traduzido em um número positivo adicionando 256. Por exemplo, -2 é transformado em 254.

No PowerShell, a instrução exit define o valor da variável $LASTEXITCODE. No Shell de Comando do Windows (cmd.exe), a instrução exit define o valor da variável de ambiente %ERRORLEVEL%.

Qualquer argumento que não seja numérico ou esteja fora do intervalo específico da plataforma é traduzido para o valor de 0.

No exemplo a seguir, o usuário define o valor da variável de nível de erro como 4 adicionando exit 4 ao arquivo de script test.ps1.

C:\scripts\test>type test.ps1
1
2
3
exit 4

C:\scripts\test>pwsh -File ./test.ps1
1
2
3

C:\scripts\test>echo %ERRORLEVEL%
4

Quando você executa pwsh.exe -File <path to a script> e o arquivo de script termina com um comando exit, o código de saída é definido como o argumento numérico usado com o comando exit. Se o script não tiver nenhuma instrução exit, o código de saída será sempre 0 quando o script for concluído sem erro ou 1 quando o script for encerrado a partir de uma exceção não tratada.

filter

Especifica uma função na qual a lista de instruções é executada uma vez para cada objeto de entrada. Tem o mesmo efeito que uma função que contém apenas um bloco process.

Sintaxe:

filter <name> {<statement list>}

finally

Define uma lista de instruções que é executada após instruções associadas a try e catch. Uma lista de instruções finally é executada mesmo se você pressionar CTRL+C para deixar um script ou se você usar a palavra-chave exit no script.

Sintaxe:

try {<statement list>}
catch [<error type>] {<statement list>}
finally {<statement list>}

for

Define um loop com uma condição.

Sintaxe:

for (<initialize>; <condition>; <iterate>) { <statement list> }

foreach

Define um loop usando cada membro de uma coleção.

Sintaxe:

foreach (<item> in <collection>) { <statement list> }

from

Reservado para uso futuro.

function

Cria uma lista de instruções nomeadas de código reutilizável. Você pode nomear o escopo ao qual uma função pertence. Você também pode especificar um ou mais parâmetros nomeados usando a palavra-chave param. Dentro da lista de instruções de função, você pode incluir listas de instruções dynamicparam, begin, processe end.

Sintaxe:

function [<scope:>]<name> {
   param ([type]<$PName1> [, [type]<$PName2>])
   dynamicparam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

Você também tem a opção de definir um ou mais parâmetros fora da lista de instruções após o nome da função.

Sintaxe:

function [<scope:>]<name> [([type]<$PName1>, [[type]<$PName2>])] {
   dynamicparam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

if

Define uma condicional.

Sintaxe:

if (<condition>) {<statement list>}

hidden

Oculta os membros da classe dos resultados padrão do cmdlet Get-Member, IntelliSense e resultados de conclusão de guia.

Sintaxe:

hidden [data type] $member_name

in

Usado em uma instrução foreach para criar um loop que usa cada membro de uma coleção.

Sintaxe:

foreach (<item> in <collection>){<statement list>}

param

Define os parâmetros em uma função.

Sintaxe:

function [<scope:>]<name> {
   param ([type]<$PName1>[, [[type]<$PName2>]])
   <statement list>
}

process

Especifica uma parte do corpo de uma função, juntamente com as palavras-chave dynamicparam, begine end. Quando uma lista de instruções process recebe entrada do pipeline, a lista de instruções process é executada uma vez para cada elemento do pipeline. Se o pipeline não fornecer objetos, a lista de instruções process não será executada. Se o comando for o primeiro comando no pipeline, a lista de instruções process será executada uma vez.

Sintaxe:

function <name> {
   dynamicparam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

return

Faz com que o PowerShell saia do escopo atual, como um script ou função, e grava a expressão opcional na saída.

Sintaxe:

return [<expression>]

static

Especifica que a propriedade ou método definido é comum a todas as instâncias da classe em que é definido.

Consulte class para obter exemplos de uso.

switch

Para verificar várias condições, utilize uma declaração switch. A declaração switch é equivalente a uma série de declarações if, mas é mais simples.

A instrução switch lista cada condição e uma ação opcional. Se uma condição for obtida, a ação será executada.

Sintaxe 1:

switch [-Regex|-Wildcard|-Exact][-CaseSensitive] ( <value> )
{
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   ...

   default {<statement list>}
}

Sintaxe 2:

switch [-Regex|-Wildcard|-Exact][-CaseSensitive] -File <filename>
{
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   ...

   default {<statement list>}
}

throw

Lança um objeto como um erro.

Sintaxe:

throw [<object>]

trap

Define uma lista de instruções a ser executada se um erro for encontrado. Um tipo de erro requer colchetes. O segundo par de colchetes indica que o tipo de erro é opcional.

Sintaxe:

trap [[<error type>]] {<statement list>}

try

Define uma lista de instruções a ser verificada quanto a erros enquanto as instruções são executadas. Se ocorrer um erro, o PowerShell continuará em execução em uma instrução catch ou finally. Um tipo de erro requer colchetes. O segundo par de colchetes indica que o tipo de erro é opcional.

Sintaxe:

try {<statement list>}
catch [[<error type>]] {<statement list>}
finally {<statement list>}

until

Usado numa instrução do como uma estrutura de repetição em que a lista de instruções é executada pelo menos uma vez.

Sintaxe:

do {<statement list>} until (<condition>)

using

Permite indicar quais namespaces são usados na sessão. Nomes de tipo, classes e membros exigem menos digitação para fazer referência a eles. Você também pode incluir classes dos módulos.

Sintaxe do namespace:

using namespace <.NET-namespace>

Sintaxe do módulo:

using module <module-name>

Sintaxe da montagem:

using assembly <.NET-assembly-path>

Para obter mais informações, consulte about_Using.

while

A instrução while é uma construção de looping onde a condição é testada antes que as instruções sejam executadas. Se a condição for falsa, as instruções não serão executadas.

Sintaxe da instrução:

while (<condition>) {
   <statements>
 }

Quando usado numa declaração do, while faz parte de um construto de repetição onde a lista de instruções é executada pelo menos uma vez.

do loop Sintaxe:

do {<statement list>} while (<condition>)

Consulte também