about_Operators

Se aplica a: Windows PowerShell 2.0, Windows PowerShell 3.0, Windows PowerShell 4.0, Windows PowerShell 5.0

TEMA

about_Operators

DESCRIPCIÓN BREVE

Describe los operadores que son compatibles con Windows PowerShell.

DESCRIPCIÓN LARGA

Un operador es un elemento del lenguaje que se puede usar en un comando o una expresión. Windows PowerShell admite varios tipos de operadores que permiten manipular los valores.

OPERADORES ARITMÉTICOS

Use los operadores aritméticos (+, -, *, /, %) para calcular valores en un comando o una expresión. Con estos operadores, es posible sumar, restar, multiplicar o dividir valores, así como calcular el resto (módulo) de una operación de división.

También se pueden usar operadores aritméticos con cadenas, matrices y tablas hash. El operador de adición concatena los elementos. El operador de multiplicación devuelve el número de copias especificado de cada elemento.

Para más información, consulte about_Arithmetic_Operators.

OPERADORES DE ASIGNACIÓN

Use los operadores de asignación (=, +=, -=, *=, /=, %=) para asignar uno o más valores a variables, para cambiar los valores de una variable y para agregar valores a variables. También puede convertir la variable en cualquier tipo de datos de Microsoft .NET Framework, como una variable de cadena, DateTime o de proceso.

Para más información, consulte about_Assignment_Operators.

OPERADORES DE COMPARACIÓN

Use los operadores de comparación (-eq, -ne, -gt, -lt, -le, -ge) para comparar valores y condiciones de prueba. Por ejemplo, puede comparar dos valores de cadena para determinar si son iguales.

Entre los operadores de comparación se incluyen los operadores de coincidencia (-match, -notmatch), que buscan patrones mediante expresiones regulares; el operador de sustitución (-replace), que usa expresiones regulares para cambiar los valores de entrada; los operadores like (-like, -notlike), que buscan patrones mediante caracteres comodín (*); y los operadores de inclusión (-in, -notin, -contains, -notcontains), que determinan si un valor de prueba aparece en un conjunto de referencias.

También se incluyen los operadores bit a bit (-bAND, -bOR, -bXOR, -bNOT) para manipular los patrones de bits de los valores.

Para obtener más información, vea about_Comparison_Operators.

OPERADORES LÓGICOS

Use los operadores lógicos (-and, -or, -xor, -not, !) para conectar las instrucciones condicionales con un solo condicional complejo. Por ejemplo, puede usar un operador -and lógico para crear un filtro de objeto con dos condiciones diferentes.

Para más información, consulte about_Logical_Operators.

OPERADORES DE REDIRECCIÓN

Use los operadores de redirección (>, >>, 2>, 2> y 2>&1) para enviar la salida de un comando o expresión a un archivo de texto. Los operadores de redirección funcionan como el cmdlet Out-File (sin parámetros), pero también permiten redirigir la salida de errores a los archivos especificados. También puede usar el cmdlet Tee-Object para redirigir la salida.

Para más información, consulte about_Redirection.

OPERADORES DE DIVISIÓN Y COMBINACIÓN

Los operadores -split y -join dividen y combinan subcadenas. El operador -split divide una cadena en subcadenas. El operador -join concatena varias cadenas en una sola cadena.

Para obtener más información, vea about_Split y about_Join.

OPERADORES DE TIPO

Use los operadores de tipo (-is, -isnot, -as) para buscar o cambiar el tipo de .NET Framework de un objeto.

Para más información, consulte about_Type_Operators.

OPERADORES UNARIOS

Use los operadores unarios para aumentar o disminuir variables o propiedades del objeto y para establecer enteros en números positivos o negativos. Por ejemplo, para aumentar la variable $a de 9 a 10, escriba $a++.

OPERADORES ESPECIALES

Use los operadores especiales para realizar tareas que no pueden realizar los demás operadores. Por ejemplo, los operadores especiales permiten realizar operaciones como ejecutar comandos y cambiar el tipo de datos de un valor.

@( ) Operador de subexpresión de matriz

Devuelve como matriz el resultado de una o varias instrucciones. Si hay un solo elemento, la matriz solo tiene un miembro.

             @(Get-WMIObject win32_logicalDisk)

&Operador de llamada

Ejecuta un comando, script o bloque de script. El operador de llamada, también denominado "operador de invocación", permite ejecutar comandos que se almacenan en variables y se representan con cadenas. Dado que el operador de llamada no analiza el comando, no puede interpretar parámetros de comando.

             C:\PS> $c = "get-executionpolicy"
             C:\PS> $c
             get-executionpolicy
 
             C:\PS> & $c
             AllSigned

[ ] Operador de conversión

Convierte o limita los objetos según el tipo especificado. Si no se pueden convertir los objetos, Windows PowerShell genera un error.

             [datetime]$birthday = "1/20/88"
             [int64]$a = 34  

, Operador de coma

Como operador binario, la coma crea una matriz. Como operador unario, la coma crea una matriz con un miembro. Coloque la coma antes del miembro.

             $myArray = 1,2,3 
             $SingleArray = ,1     

. Operador de scripts prefijados por puntos

Ejecuta un script en el ámbito actual para que las funciones, alias y variables que crea el script se agreguen al ámbito actual.

             . c:\scripts.sample.ps1

Nota: el operador de scripts prefijados por puntos va seguido de un espacio. Use el espacio para distinguir este punto del símbolo de punto (.) que representa el directorio actual.

En el ejemplo siguiente, se ejecuta en el ámbito actual el script Sample.ps1 del directorio actual.

                 . .\sample.ps1

-f Operador de formato

Da formato a cadenas mediante el método de formato de objetos de cadena. Escriba la cadena de formato a la izquierda del operador y los objetos a los que se va a dar formato a la derecha del operador.

             C:\PS> "{0} {1,-10} {2:N}" -f 1,"hello",[math]::pi
             1 hello      3.14

Para obtener más información, vea el método String.Format (https://go.microsoft.com/fwlink/?LinkID=166450) y formato compuesto (https://go.microsoft.com/fwlink/?LinkID=166451).

[ ] Operador de índice

Selecciona objetos de colecciones indizadas, como matrices y tablas hash. Los índices de matriz son de base cero, por lo que el primer objeto se indiza como [0]. Solo en el caso de las matrices puede usar también índices negativos para obtener los últimos valores. Las tablas hash se indizan por valor de clave.

             C:\PS> $a = 1, 2, 3
             C:\PS> $a[0]
             1
             C:\PS> $a[-1]
             3


             C:\PS> (get-hotfix | sort installedOn)[-1]

           
             C:\PS> $h = @{key="value"; name="Windows PowerShell"; version="2.0"}
             C:\PS> $h["name"]
             Windows PowerShell


             C:\PS> $x = [xml]"<doc><intro>Once upon a time...</intro></doc>"
             C:\PS> $x["doc"]
             intro
             -----
             Once upon a time...

| Operador de canalización

Envía ("canaliza") la salida del comando precedente al comando siguiente. Cuando la salida incluye más de un objeto (una "colección"), el operador de canalización envía los objetos de uno en uno.

               get-process | get-member
               get-pssnapin | where {$_.vendor -ne "Microsoft"}                              

. Operador de desreferenciación de propiedad

Accede a las propiedades y los métodos de un objeto.

             $myProcess.peakWorkingSet
             (get-process PowerShell).kill()

.. Operador de intervalo

Representa los enteros secuenciales en una matriz de enteros, dados un límite superior e inferior.

             1..10
             10..1
             foreach ($a in 1..$max) {write-host $a}

:: Operador de miembro estático

Llama a los métodos y al operador de propiedades estáticas de una clase de .NET Framework. Para buscar los métodos y las propiedades estáticas de un objeto, use el parámetro Static del cmdlet Get-Member.

             [datetime]::now
   

$( ) Operador de subexpresión

Devuelve el resultado de una o más instrucciones. En el caso de un solo resultado, devuelve un valor escalar. En el caso de varios resultados, devuelve una matriz.

             $($x * 23)
             $(Get-WMIObject win32_Directory)

VEA TAMBIÉN

about_Arithmetic_Operators

about_Assignment_Operators

about_Comparison_Operators

about_Logical_Operators

about_Type_Operators

about_Split

about_Join

about_Redirection