TEMA
about_parsing
DESCRIPCIÓN BREVE
Describe cómo Windows PowerShell analiza los comandos.
DESCRIPCIÓN DETALLADA
Cuando se escribe un comando en el símbolo del sistema, Windows
PowerShell divide el texto del comando en una serie de segmentos
denominados símbolos (tokens) y después determina cómo debe
interpretarse cada símbolo. Por ejemplo, Windows PowerShell
divide el comando siguiente en dos símbolos "Write-Host" y "book"
e interpreta cada símbolo por separado:
Write-Host book
Al procesar un comando, el analizador de Windows PowerShell
funciona en modo de expresiones o en modo de argumentos:
- En modo de expresiones, los valores de cadena de caracteres
deben escribirse entre comillas. Los números que no se
escriban entre comillas se tratarán como valores numéricos
(no como una serie de caracteres).
- En modo de argumentos, cada valor se trata como una cadena
expandible a menos que comience por uno de los siguientes
caracteres especiales: signo de dólar ($), arroba (@), comilla
sencilla ('), comillas dobles (") o paréntesis de apertura (().
Si va precedido de uno de estos caracteres, el valor se tratará
como una expresión de valor.
En la tabla siguiente, se muestran varios ejemplos de comandos
procesados en modo de expresiones y en modo de argumentos, así
como los resultados generados por dichos comandos.
Ejemplo Modo Resultado
------------------ ---------- ----------------
2+2 Expresión 4 (entero)
Write-Output 2+2 Argumento "2+2" (cadena)
Write-Output (2+2) Expresión 4 (entero)
$a = 2+2 Expresión $a = 4 (entero)
Write-Output $a Expresión 4 (entero)
Write-Output $a/H Argumento "4/H" (cadena)
Cada símbolo puede interpretarse como algún tipo de objeto, como
un valor booleano o una cadena. Windows PowerShell intenta
determinar el tipo de objeto de la expresión. El tipo de objeto
depende del tipo de parámetro que un comando espere y de si Windows
PowerShell sabe cómo convertir el argumento en el tipo correcto. En
la tabla siguiente se muestran varios ejemplos de los tipos asignados
a los valores devueltos por las expresiones.
Ejemplo Modo Resultado
------------------ ---------- ---------------
Write-Output !1 Argumento "!1" (cadena)
Write-Output (!1) Expresión False (valor booleano)
Write-Output (2) Expresión 2 (entero)
VEA TAMBIÉN
about_Command_Syntax