Share via


Acerca de las palabras clave del lenguaje

DESCRIPCIÓN BREVE

Describe las palabras clave en el lenguaje de scripting de PowerShell.

DESCRIPCIÓN LARGA

PowerShell tiene las siguientes palabras clave de lenguaje. Para obtener más información, vea el tema acerca de la palabra clave y la información que sigue a la tabla.

Palabra clave Referencia
Comenzar about_Functions, about_Functions_Advanced
Break about_Break, about_Trap
Catch about_Try_Catch_Finally
Clase about_Classes
Continuar about_Continue, about_Trap
data about_Data_Sections
Definir Reservado para uso futuro
Lo que es necesario hacer: about_Do, about_While
DynamicParam about_Functions_Advanced_Parameters
Else about_If
Elseif about_If
End about_Functions, about_Functions_Advanced_Methods
Enumeración about_Enum
Salir Descrito en este tema
Filtrar about_Functions
Finally about_Try_Catch_Finally
Para about_For
ForEach about_ForEach
De Reservado para uso futuro
Función about_Functions, about_Functions_Advanced
Hidden about_Hidden
Si about_If
En about_ForEach
InlineScript about_InlineScript
Parámetro about_Functions
Proceso about_Functions, about_Functions_Advanced
Valor devuelto about_Return
estática about_Classes
Switch about_Switch
Throw about_Throw, about_Functions_Advanced_Methods
Trap about_Trap, about_Break, about_Try_Catch_Finally
Probar about_Try_Catch_Finally
Until about_Do
Uso about_Using, about_Classes
Var Reservado para uso futuro
While about_While, about_Do

palabras clave del lenguaje;

Comenzar

Especifica una parte del cuerpo de una función, junto con las DynamicParampalabras clave , Processy End . La Begin lista de instrucciones se ejecuta una vez antes de que se reciban objetos de la canalización.

Sintaxis:

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

Break

Hace que un script salga de un bucle.

Sintaxis:

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

   break
   ...

   <statements>
}

Catch

Especifica una lista de instrucciones que se va a ejecutar si se produce un error en la lista de instrucciones Try correspondiente. Un tipo de error requiere corchetes. El segundo par de corchetes indica que el tipo de error es opcional.

Sintaxis:

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

Clase

Especifica una nueva clase en PowerShell.

Sintaxis:

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

Continuar

Hace que un script deje de ejecutar un bucle y vuelva a la condición. Si se cumple la condición, el script vuelve a iniciar el bucle.

Sintaxis:

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

   continue
   ...

   <statements>
}

data

En un script, define una sección que aísla los datos de la lógica del script. También puede incluir If instrucciones y algunos comandos limitados.

Sintaxis:

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

Lo que es necesario hacer:

Se usa con la While palabra clave o Until como una construcción de bucle. PowerShell ejecuta la lista de instrucciones al menos una vez, a diferencia de un bucle que usa While.

Sintaxis para While:

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

Sintaxis para Until:

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

DynamicParam

Especifica una parte del cuerpo de una función, junto con las Beginpalabras clave , Processy End . Los parámetros dinámicos se agregan en tiempo de ejecución.

Sintaxis:

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

Else

Se usa con la If palabra clave para especificar la lista de instrucciones predeterminada.

Sintaxis:

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

Elseif

Se usa con las If palabras clave y Else para especificar condicionales adicionales. La Else palabra clave es opcional.

Sintaxis:

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

End

Especifica una parte del cuerpo de una función, junto con las DynamicParampalabras clave , Beginy End . La End lista de instrucciones se ejecuta una vez después de que todos los objetos se hayan recibido de la canalización.

Sintaxis:

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

Enumeración

enum se usa para declarar una enumeración; un tipo distinto que consta de un conjunto de etiquetas con nombre denominadas lista de enumeradores.

Sintaxis:

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

Salir

Hace que PowerShell salga de un script o una instancia de PowerShell.

Sintaxis:

exit
exit <exitcode>

Cuando se usa powershell.exe con el parámetro File , el propio archivo de .ps1 (script) debe incluir instrucciones para controlar los errores o excepciones que se producen mientras se ejecuta el script. Solo debe usar la instrucción exit para indicar el estado posterior a la ejecución del script.

En PowerShell, la instrucción exit establece el valor de la $LASTEXITCODE variable. En el Shell de comandos de Windows (cmd.exe), la instrucción exit establece el valor de la %ERRORLEVEL% variable de entorno.

En el ejemplo siguiente, el usuario establece el valor de variable de nivel de error en 4 agregando exit 4 al archivo de script test.ps1.

C:\scripts\test>type test.ps1
1

2

3

exit 4

C:\scripts\test>powershell -file ./test.ps1
1

2

3

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

Cuando se ejecuta powershell.exe -File <path to a script>, la instrucción exit establece la %ERRORLEVEL% variable en un valor distinto de cero. Si tiene una excepción no controlada en el script, %ERRORLEVEL% se establece en el valor 1.

Filtrar

Especifica una función en la que la lista de instrucciones se ejecuta una vez para cada objeto de entrada. Tiene el mismo efecto que una función que contiene solo un bloque Process.

Sintaxis:

filter <name> {<statement list>}

Finally

Define una lista de instrucciones que se ejecuta después de las instrucciones asociadas a Try y Catch. Una Finally lista de instrucciones se ejecuta incluso si presiona CTRL+C para dejar un script o si usa la palabra clave Exit en el script.

Sintaxis:

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

Para

Define un bucle mediante una condición .

Sintaxis:

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

ForEach

Define un bucle mediante cada miembro de una colección.

Sintaxis:

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

De

Reservado para uso futuro.

Función

Crea una lista de instrucciones con nombre de código reutilizable. Puede asignar un nombre al ámbito al que pertenece una función. Además, puede especificar uno o varios parámetros con nombre mediante la Param palabra clave . Dentro de la lista de instrucciones de función, puede incluir DynamicParamlistas de instrucciones , BeginProcess, y End .

Sintaxis:

function [<scope:>]<name> {
   param ([type]<$pname1> [, [type]<$pname2>])
   DynamicParam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

También tiene la opción de definir uno o varios parámetros fuera de la lista de instrucciones después del nombre de la función.

Sintaxis:

function [<scope:>]<name> [([type]<$pname1>, [[type]<$pname2>])] {
   DynamicParam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

Si

Define un condicional.

Sintaxis:

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

Hidden

Oculta los miembros de clase de los resultados predeterminados del Get-Member cmdlet y de IntelliSense y los resultados de finalización de tabulación.

Sintaxis:

Hidden [data type] $member_name

En

Se usa en una ForEach instrucción para crear un bucle que use cada miembro de una colección.

Sintaxis:

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

InlineScript

Ejecuta comandos de flujo de trabajo en una sesión compartida de PowerShell. Esta palabra clave solo es válida en un flujo de trabajo de PowerShell.

Sintaxis:

workflow <verb>-<noun>
{
   InlineScript
   {
      <Command/Expression>
      ...

   }
}

La InlineScript palabra clave indica una InlineScript actividad, que ejecuta comandos en una sesión estándar compartida (que no es de flujo de trabajo). Puede usar la InlineScript palabra clave para ejecutar comandos que, de lo contrario, no son válidos en un flujo de trabajo y para ejecutar comandos que comparten datos. De forma predeterminada, los comandos de un bloque de script InlineScript se ejecutan en un proceso independiente.

Para obtener más información, consulte Ejecución de comandos de PowerShell en un flujo de trabajo.

Parámetro

Define los parámetros de una función.

Sintaxis:

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

Proceso

Especifica una parte del cuerpo de una función, junto con las DynamicParampalabras clave , Beginy End . Cuando una Process lista de instrucciones recibe la entrada de la canalización, la Process lista de instrucciones se ejecuta una vez para cada elemento de la canalización. Si la canalización no proporciona ningún objeto, la Process lista de instrucciones no se ejecuta. Si el comando es el primer comando de la canalización, la lista de Process instrucciones se ejecuta una vez.

Sintaxis:

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

Valor devuelto

Hace que PowerShell deje el ámbito actual, como un script o una función, y escribe la expresión opcional en la salida.

Sintaxis:

return [<expression>]

estática

Especifica que la propiedad o el método definido son comunes a todas las instancias de la clase en la que se define.

Consulte para obtener Class ejemplos de uso.

Switch

Para comprobar varias condiciones, use una Switch instrucción . La Switch instrucción es equivalente a una serie de instrucciones If, pero es más sencillo.

La Switch instrucción enumera cada condición y una acción opcional. Si se obtiene una condición, se realiza la acción.

Sintaxis 1:

switch [-regex|-wildcard|-exact][-casesensitive] ( <value> )
{
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   ...

   default {<statement list>}
}

Sintaxis 2:

switch [-regex|-wildcard|-exact][-casesensitive] -file <filename>
{
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   ...

   default {<statement list>}
}

Throw

Produce un objeto como un error.

Sintaxis:

throw [<object>]

Trap

Define una lista de instrucciones que se va a ejecutar si se encuentra un error. Un tipo de error requiere corchetes. El segundo par de corchetes indica que el tipo de error es opcional.

Sintaxis:

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

Probar

Define una lista de instrucciones para comprobar si hay errores mientras se ejecutan las instrucciones. Si se produce un error, PowerShell continúa ejecutándose en una Catch instrucción o Finally . Un tipo de error requiere corchetes. El segundo par de corchetes indica que el tipo de error es opcional.

Sintaxis:

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

Until

Se usa en una Do instrucción como una construcción de bucle donde la lista de instrucciones se ejecuta al menos una vez.

Sintaxis:

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

Uso

Permite indicar qué espacios de nombres se usan en la sesión. Las clases y los miembros requieren menos escritura para mencionarlas. También puede incluir clases de módulos.

Sintaxis n.º 1:

using namespace <.Net-framework-namespace>

Sintaxis n.º 2:

using module <module-name>

While

La while instrucción es una construcción de bucle donde se prueba la condición antes de que se ejecuten las instrucciones . Si la condición es FALSE, las instrucciones no se ejecutan.

Sintaxis de instrucción:

while (<condition>) {
   <statements>
 }

Cuando se usa en una Do instrucción , while forma parte de una construcción de bucle donde la lista de instrucciones se ejecuta al menos una vez.

Sintaxis de bucle Do:

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

CONSULTE TAMBIÉN