Come usare gli hashtables in PowerShell

Come usare gli hashtables in PowerShell
Hashtables vengono utilizzati per archiviare valori che contengono una chiave. Ad esempio, hai un armadietto; Solo se hai le chiavi aprirai il blocco. Lo stesso è il caso degli hashtables. Diamo un'occhiata a un altro scenario. Supponiamo che tu stia cercando un libro in una biblioteca e inizi raccogliendo il libro più vicino alla porta d'ingresso, quindi al libro successivo e così via. Trovare il libro che desideri richiederebbe un bel po 'di tempo.

In alternativa, puoi controllare l'indice della biblioteca, che ti darà una posizione approssimativa del libro. La funzionalità di un hashtable è simile a un indice di libreria. Hashtables consentono ai programmi di recuperare i dati prevedibilmente e rapidamente. Tecnologie come Google, che analizza i dati in terabyte e li rende ricercabili in un secondo, sarebbe impossibile senza implementare hashtables nel loro codice.

Cosa sono gli hashtable in PowerShell?

Gli hashtables sono le strutture di dati più utili in PowerShell. Un hashtable è composto da una serie di coppie "chiave" e "valore". Queste tabelle possono essere utilizzate in molti modi diversi. Utilizzarli come tabelle di ricerca dei dati, permettendoti di interrogare l'hashtable in base alla sua chiave e recuperare il valore associato. Aiuterebbe a individuare il contenitore corrispondente al "chiave"Per recuperare il suo"valore".

In pratica, l'utilizzo delle chiavi come una ricerca sui dati è efficiente e può aiutare la cache. Se hai una grande quantità di dati di riferimento e non si desidera interrogarli regolarmente in un database, è possibile utilizzare l'hashtable per memorizzare nella cache il risultato e salvarlo per accedervi più rapidamente. Queste tabelle non consentono l'aggiunta di "NULLO"Valori, che ti aiuta a salvare la memoria.

Questo articolo ti mostrerà Come usare gli hashtables in PowerShell. Quindi, iniziamo!

Come usare gli hashtables in PowerShell

Prima di tutto, apri il tuo "Windows Powershell ISE"Cercandolo manualmente nella casella di ricerca:

Dal file, selezionare l'opzione "Nuovo"E crea una nuova sceneggiatura di PowerShell:

Ora, crea un semplice hashtable dichiarandolo nella tua sceneggiatura PowerShell. Specifica il tuo nome hashtable con "$"Variabile e definisce il suo valore all'interno delle parentesi graffe"@".

$ colorlist = @id = 1; Shape = "Square"; Color = "blu"
$ colorlist

Nella nostra sceneggiatura, abbiamo dichiarato un hashtable chiamato "$colorlist"Avere le chiavi"ID, Forma, Colore"Con i loro rispettivi valori:"1, Piazza, Blu".

Salva questo script come "testfile1.PS1"E esegui questa sceneggiatura PowerShell:

L'esecuzione del “testfile1.PS1"Ti mostrerà il seguente output:

Puoi anche definire "tasti" e il loro "valori"Come variabili separate. Dopodiché, usi il "aggiungere()"Funzione per aggiungere le chiavi e i loro valori nell'hashtable.

$ key = 'Dave'
$ value = 36
$ Agelist.Aggiungi ($ key, $ value)
$ Agelist.Aggiungi ('Alex', 9)
$ Agelist

In questa sceneggiatura, abbiamo superato "Dave" E "36" COME "$ Key" E "$ valore"Come variabili in"aggiungere()" funzione. In contrasto, "Alex" E "9"Vengono passati direttamente nella stessa funzione. Entrambe le funzioni Chiamate aggiungeranno chiavi e valori nell'hashtable.

Come accedere ai valori di hashtable in powershell

Hai visto il metodo per aggiungere le chiavi e i loro valori nell'hashtable. Allo stesso modo, è possibile accedere alla chiave con il rispettivo valore.

$ agelist = @
$ key = 'kevin'
$ value = 36
$ Agelist [$ key] = $ value
$ Agelist ['Alex'] = 9
$ Agelist

Come dichiarare hashtable con valori in PowerShell

PowerShell ti fornisce due metodi per la creazione di un hashtable. Il primo è creare un hashtable vuoto e poi aggiungere il "tasti" E "valori" dentro. In un altro metodo, puoi dichiarare un hashtable con il suo "tasti" E valori"Immediatamente. L'esempio seguente ti dimostrerà questo concetto:

$ agelist = @
Kevin = 36
Alex = 9

$ Agelist

Come iterare gli hashtables in PowerShell

Un hashtable è una combinazione di chiavi e valori; è iterato in modo diverso rispetto a un array o a un normale elenco di oggetti. La prima cosa che devi notare nel comando di seguito è che stiamo conducendo il nostro hashtable usando l'operatore del tubo ["|"]; L'operatore del tubo tratta l'hashtable come un oggetto. Mentre il "Misura-oggetto"Il comando viene utilizzato per estrarre i valori della proprietà dell'hashtable.

> $ AGELIST | Misura-oggetto

L'esecuzione del comando sopra dato visualizzerà il seguente output su PowerShell:

Puoi anche usare il “GetEnumerator ()"Metodo ai fini dell'iterazione sull'hashtable. Usa questa funzione con "Fooch-object", Ti mostrerà la chiave e il suo valore accoppiato uno dopo l'altro.

$ Agelist.GetEnumerator () | Foreach-object
$ message = '0 è 1 anni!'-f $ _.chiave, $ _.valore
Messaggio $-output $

Come controllare il numero di valori hashtable in PowerShell

IL ".contare"La proprietà viene utilizzata per calcolare il numero totale di valori nel tuo hashtable. Puoi utilizzare questa proprietà con il tuo hashtable nel modo seguente:

> $ Agelist.contare

Come ordinare la chiave/valori hashtable in powershell

Quando si desidera che le chiavi e i valori di Hashtable siano nell'ordine in cui li definisci, puoi specificare il "[ordinato]"Parola chiave mentre dichiari la tua hashtable nello script:

$ persona = [ordinato]@
name = 'kevin'
età = 36

$ persona

Esegui questo "testfile1.PS1"Script, e stamperà le chiavi e i loro valori in ordine in cui li abbiamo definiti nel nostro script:

Senza il [ordinato] Opzione, lo script ti mostrerà il seguente output:

Conclusione

Hashtables sono abbastanza significativi in Powershell che può essere utilizzato in scenari amministrativi e scripting più avanzati. L'uso di Hashtable da parte di PowerShell dimostra anche come può essere utile PowerShell come oggetti. Per quasi qualsiasi tipo di dati, gli hashtables sono un modo efficace per archiviare coppie chiave/valore.

Questo modello aiuta a individuare il contenitore che corrisponde al "chiave"Per recuperare il suo"valore"; In pratica, l'utilizzo delle chiavi come una ricerca sui dati è efficiente e utile nella memorizzazione nella cache. In questo articolo, ti abbiamo mostrato Come usare gli hashtables In PowerShell, incluso il metodo per creare un hashtable, dichiarare e accedere ai suoi valori, controllare, ordinare valori hashtable.