Cómo usar hashtables en PowerShell

Cómo usar hashtables en PowerShell
Traquetas se utilizan para almacenar valores que contienen una clave. Por ejemplo, tienes un casillero; Solo si tienes las llaves abrirás el bloqueo. Lo mismo es el caso con las hashtables. Veamos otro escenario. Supongamos que está buscando un libro en una biblioteca, y comienza recogiendo el libro más cercano a la puerta principal, luego al siguiente libro, y así sucesivamente. Encontrar el libro que desee tomaría bastante tiempo.

Alternativamente, puede consultar en el índice de la biblioteca, lo que le dará una ubicación aproximada del libro. La funcionalidad de un hashtable es similar a un índice de biblioteca. Los hashtables permiten que los programas recuperen datos previsible y rápidamente. Tecnologías como Google, que analizan datos en terabytes y los hacen buscar en un segundo, serían imposibles sin implementar hashtable en su código.

¿Qué son las hashtables en PowerShell??

Las hashtables son las estructuras de datos más útiles en PowerShell. Un hashtable está compuesto por una serie de pares de "clave" y "valor". Estas tablas se pueden utilizar de muchas maneras diferentes. Utilizarlos como tablas de búsqueda de datos, lo que le permite consultar el hashtable en función de su clave y recuperar el valor asociado. Ayudaría a localizar el contenedor correspondiente al "llave"Para recuperar su"valor".

En la práctica, utilizar las claves como una búsqueda de datos es eficiente y puede ayudar a caché. Si tiene una gran cantidad de datos de referencia y no desea consultarlo en una base de datos regularmente, puede usar la HAESHTABLE para almacenar en caché el resultado y guardarlo para acceder a él más rápidamente. Estas tablas no permiten la adición de "NULO"Valores, que te ayudan a guardar memoria.

Este artículo te mostrará Cómo usar hashtables en PowerShell. Vamos a empezar!

Cómo usar hashtables en PowerShell

En primer lugar, abre tu "Windows PowerShell ISE"Al buscarlo manualmente en el cuadro de búsqueda:

En el archivo, seleccione la opción "Nuevo"Y crea un nuevo script de PowerShell:

Ahora, cree un sencillo hashtable declarándolo en su script de PowerShell. Especifique su nombre de hashtable con el "ps"Variable y defina su valor dentro de las láminas rizadas"@".

$ colorlist = @id = 1; Forma = "cuadrado"; Color = "azul"
$ Colorlist

En nuestro guión, hemos declarado un hashtable llamado "$lista de color"Tener las llaves"IDENTIFICACIÓN, Forma, Color"Con sus respectivos valores:"1, Cuadrado, Azul".

Guarde este script como "TestFile1.PS1"Y ejecuta este guión de PowerShell:

La ejecución del "TestFile1.PS1"Le mostrará la siguiente salida:

También puedes definir "llaves" y ellos "valores"Como variables separadas. Después de eso, usas el "agregar()"Funciona para agregar claves y sus valores en la hábil.

$ key = 'Dave'
$ valor = 36
$ agelista.agregar ($ clave, $ valor)
$ agelista.Agregar ('Alex', 9)
$ agelista

En este guión, hemos pasado "Dave" y "36" como "$ Key" y "$ valor"Como variables en el"agregar()" función. A diferencia de, "Alex" y "9"Se pasan directamente en la misma función. Ambas declaraciones de llamadas de las funciones agregarán claves y valores en el hashtable.

Cómo acceder a los valores de la hashtable en PowerShell

Has visto el método de agregar claves y sus valores en la hábil. Del mismo modo, puede acceder a la clave con su valor respectivo.

$ agelist = @
$ key = 'Kevin'
$ valor = 36
$ agelista [$ key] = $ valor
$ Agelist ['Alex'] = 9
$ agelista

Cómo declarar hashtable con valores en PowerShell

PowerShell le proporciona dos métodos para crear una hashtable. El primero es crear un hashtable vacío y luego agregar el "llaves" y "valores" en eso. En otro método, puede declarar una hashtable con su "llaves" y valores" En seguida. El ejemplo dado a continuación le demostrará este concepto:

$ agelist = @
Kevin = 36
Alex = 9

$ agelista

Cómo iterar las hashtables en PowerShell

Un hashtable es una combinación de claves y valores; Se itera de manera diferente a una matriz o una lista regular de objetos. Lo primero que debe notar en el comando otorgado a continuación es que estamos tuviendo nuestro hashtable usando el operador de tubería ["|"]; El operador de tuberías trata la hashtable como un objeto. Mientras que el "Objeto de mediciónEl comando se utiliza para extraer los valores de propiedad del hábil.

> $ Agelist | Objeto de medición

La ejecución del comando anterior mostrará la siguiente salida en su PowerShell:

También puedes usar el "Getenumerator ()"Método para el propósito de la iteración sobre la hashtable. Use esta función con el "Foreach-object", Le mostrará la clave y su valor emparejado uno tras otro.

$ agelista.Getenumerator () | Foreach-object
$ mensaje = '0 tiene 1 años!'-f $ _.clave, $ _.valor
Mensaje de descripción de $

Cómo verificar el número de valores hashtables en PowerShell

El ".contarLa propiedad se utiliza para calcular el número total de valores en su hashtable. Puede usar esta propiedad con su hashtable de la siguiente manera:

> $ agelista.contar

Cómo ordenar la clave/valores de hashtable en PowerShell

Cuando desee que sus claves y valores de hashtable estén en el orden en que los defina, puede especificar el "[ordenado]"Palabra clave mientras declara su hashtable en el script:

$ persona = [ordenado]@
nombre = 'Kevin'
edad = 36

$ persona

Ejecutar esto "TestFile1.PS1"Script, e imprimirá las teclas y sus valores en orden por los cuales las hemos definido en nuestro script:

Sin el [ordenado] Opción, el script le mostrará la siguiente salida:

Conclusión

Traquetas son bastante significativos en Potencia Shell que se puede utilizar en escenarios administrativos y de secuencia de comandos más avanzados. El uso de Hashtable por parte de PowerShell también demuestra cuán útil puede ser la salida de PowerShell como objetos. Para casi cualquier tipo de datos, las hashtables son una forma efectiva de almacenar como pares de clave/valor.

Este patrón ayuda a localizar el contenedor que corresponde al "llave"Para recuperar su"valor"; En la práctica, utilizar las claves como una búsqueda de datos es eficiente y útil para almacenar en caché. En este artículo, te hemos mostrado Cómo usar las hashtables En PowerShell, incluyendo el método de crear una hashtable, declarar y acceder a sus valores, verificar, ordenar valores de hashtable.