Variables de PowerShell: cómo nombrarlas y asignar valores
En cualquier lenguaje de programación, una variable representa una ubicación de almacenamiento para un valor de datos que puede reutilizar más adelante en su código. El uso de variables facilita el cambio de valores en varios lugares, ya que puede cambiar la definición de la variable y esta nueva definición se utilizará en todo el código. Información como nombres, rutas y resultados de comandos se pueden almacenar en una variable y el tipo de variable (por ejemplo, cadena, número entero, etc.) dependerá del tipo de datos que sean.
En este artículo, veremos cómo nombrar una variable, asignar valores a una variable y los diferentes tipos de datos de una variable.
Nombrar una variable de PowerShell
El nombre de una variable de PowerShell siempre va precedido por el signo de dólar “$” y solo puede contener letras, números y el carácter de subrayado. Si necesita utilizar otros caracteres, deben estar entre llaves "{}". No debe utilizar nombres de variables que estén predefinidos.
Los siguientes son ejemplos de nombres válidos:
- $miVariable
- $MiVariable_1
- $ {mi-variable}
y estos son nombres no válidos:
- miVariable
- $mi-variable
- $mi variable
Un punto clave a tener en cuenta es que el nombre de la variable comienza después del signo de dólar. Es esencial tener esto en cuenta porque cuando especifica el nombre de la variable como parámetro en un cmdlet, debe ingresarlo sin el signo de dólar. El signo de dólar le dice al shell que lea el valor de la variable.
Junto con la mayoría de las palabras clave en PowerShell, las variables no distinguen entre mayúsculas y minúsculas. Por lo tanto, PowerShell no distingue entre $myVariable y $Myvariable.
Asignar valores a una variable de PowerShell
Puede asignar valores a una variable de PowerShell combinando un nombre de variable, un operador de asignación y una expresión. Aquí hay un ejemplo:
$a=1 + 1
El signo "=" es uno de los ocho operadores de asignación. Una expresión es todo aquello para lo cual PowerShell puede determinar un valor.
Otros ejemplos de asignación de un valor a una variable de PowerShell son:
$a="Hola mundo"
$b=1
Si ingresa una expresión en un mensaje de PowerShell, PowerShell devuelve su valor.
Para mostrar el valor de una variable, no necesita un comando especial ya que basta con ingresar el nombre de la variable. Esto funciona en un script y en un símbolo del sistema.
Gracias a la interpolación de variables, también puede expandir una variable en una cadena si la cadena está entre comillas dobles.
“Estos son los valores de las variables: $a, $b”.
Si desea mostrar los nombres de las variables como texto en lugar de mostrar sus valores, debe encerrar la cadena entre comillas simples.
'Estos son los nombres de nuestras variables $a, $b.'
No hay interpolación entre comillas simples:
En este caso, PowerShell no reconoce $a y $b como variables, simplemente como cadenas normales.
Tipos de datos de PowerShell
En los ejemplos anteriores, hemos utilizado sólo dos tipos de datos: cadenas y números enteros (enteros de 32 bits). PowerShell admite muchos otros tipos de datos, como números de punto flotante, cadenas y valores booleanos. No es necesario declarar explícitamente el tipo de datos de una variable, ya que los tipos de variables en PowerShell se determinan automáticamente cuando se les asigna un valor.
Esto significa que se selecciona un tipo de datos en función de los datos asignados. Por ejemplo, para una variable $edad=20 entonces se asignará el tipo de datos int32 y para una variable $estudiante=“Michael” entonces se asignará un tipo de datos de cadena.
En diferentes momentos, una variable puede asociarse con valores de diferentes tipos, ya sea mediante asignación o mediante el uso de los operadores ++ y ‑‑. Cuando se cambia el valor asociado con una variable, el tipo de ese valor puede cambiar.
Por ejemplo:
- $i = “xyz”
$i contiene un valor de tipo cadena
- $i = 2147483647
$i tiene un valor de tipo int
- ++$i
$i ahora tiene un valor del tipo double porque 2147483648 es demasiado grande para caber en el tipo int
Cualquier uso de una variable que no haya sido creada da como resultado el valor $null. Para ver si se ha definido una variable, puede utilizar el cmdlet Test-Path.


