Variables
Última actualización
Última actualización
Continuando con la serie de artículos de Powershell, toca hablar de las variables. Para lo que debemos definir en primer lugar qué es una variable.
Cuando hablamos de una variable en programación, nos referimos a un espacio de almacenamiento que permite guardar datos que pueden cambiar durante la ejecución de un programa. Cada variable tiene un nombre único y un tipo de dato asociado (como por ejemplo, números, texto, etc), lo que permite manipular esos valores en diversas operaciones a lo largo del código.
Lo primero que aprenderemos será a definir una variable. Para definir una variable en PowerShell, debemos utilizar el simbolo $
seguido del nombre de la variable.
Es importante tener en cuenta que el nombre de la variable, es el identificador de esta. Puede ser cualquier nombre valido, excluyendo espacios y que no debe comenzar con una letra o guion bajo.
Como mencionamos en la definición de variable, además de un nombre que las identifica, las variables tiene asociado un tipo de variable. En Powershell, las variables pueden contener diferentes tipos de datos.
Si queremos definir una variable numerica (Integer
, Float
, Decimal
) podemos hacerlo de la siguiente manera:
Podemos observar, que a diferencia de otros lenguajes de programación en Powershell no es necesario indicar de forma explicita el tipo de dato, ya que este se determina en base al valor asignado.
Por otra parte tenemos el tipo de dato cadena de texto (String
), el cual almacena secuencias de caracteres. Podemos utilizar tanto comillas dobles como simples.
Como las cadenas son una secuencia de caracteres, podemos acceder a los caracteres individuales.
Supongamos que tenemos la siguiente variable:
Si queremos obtener el primer caracter (letra P
) lo haremos de la siguiente manera:
El indice 0
(cero), representa el primer valor, en este caso, la letra P
.
El segundo valor, letra o
se encuentra en el indice 1
.
El ultimo caracter letra l
se encuentra en el indice 9
.
También podemos obtener un slice o una parte de la cadena.
Si queremos conocer la cantidad de caracteres que tiene la cadena, podemos utilizar la propiedad Length
.
Este tipo de dato almacena valores True
o False
.
Es importante destacar el valor asignado, el cual es $true
y no true
. Ya que si asignamos el valor true
obtendremos un error.
Las variables $true
y $false
, son consideradas varaibles especiales y representan los valores booleanos.
Si queremos conocer el tipo de dato de una variable, podemos utilizar el método GetType
:
Si queremos guardar un solo caracter en una variable y que sea considerada como char
, podemos hacerlo de la siguiente forma:
Como mencionamos anteriormente, PowerShell no es un lenguaje de tipado estricto, lo que significa que no es necesario definir explícitamente el tipo de un objeto al crear uno. Esto proporciona flexibilidad, ya que puedes convertir fácilmente entre diferentes tipos de datos, como de cadenas a números, de cadenas a fechas, o entre otros tipos compatibles.
En PowerShell, todo es un objeto. Sin embargo, no tienes que especificar de antemano el tipo exacto de objeto que deseas utilizar; PowerShell maneja automáticamente las conversiones y la creación de objetos según sea necesario, lo que facilita la manipulación de datos de manera más fluida y dinámica.
El casteo de tipos en PowerShell se refiere al proceso de convertir un valor de un tipo de dato a otro, como de una cadena de texto a un número o viceversa.
Existen dos tipos de casteo, el casteo implícito, el cual maneja de forma automática algunas conversiones de tipo en función del contexto, como convertir de un número a una cadena si se concatena con texto. Por otra parte, existe el casteo explícito, el cual permite convertir un tipo de dato de forma explícita utilizando el operador de tipo [type]
o el cmdlet [convert]
.
[type]
Sintaxis:
[Convert]
[Convert]::ToBoolean
.[Convert]::ToString
Si intentas hacer una conversión que no es válida (por ejemplo, convertir una cadena de texto que no puede representarse como un número), PowerShell lanzará un error.
Por ejemplo, si intetamos realizar la siguiente conversión:
Algunas conversiones son más fáciles que otras. Por ejemplo, convertir entre tipos numéricos (como de int
a float
) es sencillo, pero convertir texto a número solo funciona si el texto tiene un formato numérico válido.
Los valores null
se pueden convertir a cualquier tipo sin errores, pero al convertirlos a números o booleanos, se asigna un valor predeterminado (0
para números, False
para booleanos).
Ahora que comprendemos cómo definir variables y manipular los diferentes tipos de datos, en el próximo artículo exploraremos las operaciones que se pueden realizar con las variables.