PowerShell - Añadir y remover items de un Array

Este es un tema bastante confuso, por lo que vamos a ver algunos consejos a la hora de manipular arrays en PowerShell.

Los primero que vamos a hacer es crear un array y ver que tipo de elemento es:

$Frutas = "Manzana","Pera","Banana","Naranja"

Y luego ejecutamos:

$Frutas.GetType()

Si intentamos añadir un elemento o borrarlo nos aparece un mensaje de error:

$Frutas.Add("Kiwi")
$Frutas.Remove("Manzana")
$Frutas.IsFixedSize

La página de la MSDN explica la propiedad IsFixedSize, propiedad que aparece cuando se crea la matriz de la manera en que la creamos en el ejemplo.

Una manera de poder lidiar con este problema es utilizar System.Collections.ArrayList de la siguiente manera:

Y de esta manera vamos a poder modificar los elementos del Array:

$Matriz.Add("Kiwi")
$Matriz

Otra manera de agregar elementos a un nuevo array sumando los de otro ya definido es:

$NuevoArray = $Frutas += "Melón"

Y si en vez de adicionar un elemento o elementos en un nuevo array, queremos eliminar la manera correcta sería ejecutando:

$MenosFrutas = $Frutas -ne "Manzana"

Y por último podemos utilizar la siguiente sintaxis, que realiza lo mismo pero de otra manera:

$FrutasNuevas = {$Frutas}.Invoke()

Happy scripting!

Comments