Einführung in Array in PowerShell

Das Array ist eine Art Datenstruktur, in der eine Auflistung von Elementen gespeichert werden kann. Die Auflistung von Elementen kann entweder den gleichen oder einen anderen Datentyp haben. Auf die Elemente in einem Array kann über den Index zugegriffen werden. Der Index des Arrays beginnt normalerweise bei 0. Um auf das erste Element zuzugreifen, müssen Sie den Index (0) verwenden. In der Regel können nur zwei Operationen in einem Array ausgeführt werden, z. B. Hinzufügen eines Elements zum Array oder Entfernen eines Elements. In diesem Artikel erfahren Sie mehr über das Array in PowerShell.

Definieren eines Arrays in PowerShell

Ein Array kann auf eine der folgenden Arten definiert werden:

Das @ () ist eine der Möglichkeiten, ein Array zu definieren.

Beispiel:

$Subject = @('History', 'Geo', 'Maths')

  • Ein Array kann auch als durch Kommas getrennte Liste erstellt werden.

$test='testone', 'testtwo', 'testthree'

  • Ein Array kann für ein bestimmtes Datentypelement wie folgt erstellt werden:

(int()) $numbersarray = 1, 2, 3, 4, 5

Das obige ist ein Integer-Array und kann nur Integer-Werte enthalten.

Zugriff auf ein Array

Definieren wir ein Array,

Beispiel:

('test1', 'test2', 'test3', 'test4')

$ test (0) gibt test1 zurück, $ test (3) gibt test4 zurück. In vielen Sprachen kann nur ein Index angegeben werden, während in PowerShell mehrere Indizes gleichzeitig verwendet werden können.

Im obigen $ test (1, 3) wird zurückgegeben,

test2

test4

Operationen auf einem Array

Hinzufügen von Elementen zu einem Array. Sehen wir uns ein Beispiel an, wie Sie einem vorhandenen Array ein Element hinzufügen.

Beispiel:

('welcome', 'home')

Um das obige Array zu ergänzen, wird der Operator '+ =' verwendet.

$ test + = 'Raj'

Ausführen von $ test wird zurückgegeben,

herzlich willkommen

Zuhause

Raj

Abrufen der Anzahl eines Arrays

Hier erklären wir Ihnen, wie Sie mit der folgenden Eingabe die Anzahl eines Arrays ermitteln.

Eingang:

('test1', 'ertr', 'fgdfgfd', 'dfgfdg', 'dfdfsd', 'dfgfdgdfg')

$ test.Count gibt 6 zurück, was der Anzahl / Länge des Arrays entspricht.

1. Sortieren der Elemente in einem Array

Mit dem Sortieroperator können Sie die Elemente eines Arrays sortieren, wenn die Elemente vom gleichen Datentyp sind.

Eingang:

('oneee', 'zddsdsad', 'thraewawe')
$test |sort

Der obige Befehl sortiert die Elemente in aufsteigender Reihenfolge

Ausgabe:

Eingang:

$test |sort -Descending will sort the elements in the descending order

Ausgabe:

2. Aktualisieren eines Elements in einem Array

Mit dem Index kann ein Element im Array aktualisiert werden

Eingang:

('oneee', 'zddsdsad', 'thraewawe')
$test(0)='changed'

Der obige Befehl ändert die 'Eins' in 'Geändert'. Das Ausführen von $ test wird zurückgegeben

Ausgabe:

3. Suchen eines Elements in einem Array

Um ein Array auf Wert zu prüfen, kann der Operator like verwendet werden

Eingang:

('viki', ramu, 'aravind', 'vikram')
$test -like "*vik*"

Ausgabe:

Mehrdimensionales Array in PowerShell

Wir können ein mehrdimensionales Array wie folgt erstellen:

$testMultidimensionalArrays = @(1, 2, 3), @(4, 5, 6), @(7, 8, 9)

Jedes Array hat eine Zeile und drei Spalten.

Ein Array durchschleifen

Wie in allen anderen Sprachen kann die for-Schleife zum Schleifen von Elementen in einem Array verwendet werden.

Eingang:

('viki', 'ramu', 'aravind', 'vikram')
for($i=0;$i -lt $test.Length; $i++)
(
Write-Host $test($i) )

Ausgabe :

For-each kann verwendet werden, um eine Aktion für jedes Element im Array auszuführen.

Eingang:

(1, 4, 5, 6, 7, 8, 9, 10)
foreach($i in $test)
(
$i=$i+5
Write-Host $i
)

Ausgabe:

Array-Liste in PowerShell

Einer der Nachteile von Array ist das Hinzufügen von Elementen, um zu vermeiden, dass wir eine Array-Liste haben.

Das Folgende ist die Syntax zum Erstellen einer Array-Liste,

$myarray = (System.Collections.ArrayList)::new()
$myarray.Add(1)
$myarray.Add(2)
$myarray.Add(3)
$myarray

In der ersten Zeile wird eine Array-Liste initialisiert und in den folgenden Zeilen werden der ArrayList Elemente hinzugefügt

Array vs Array List Leistung

Die folgenden Beispiele zeigen den Leistungsunterschied beim Ausführen eines Vorgangs für ein Array und eine Array-Liste

Eingang:

Measure-Command -Expression ( 0..250 | ForEach-Object ( $arr += $_+1 ))
$arrlit = (System.Collections.ArrayList)@()
$f arrlit _performance = Measure-Command -Expression ( 0..250 | ForEach-Object ( $ arrlit += $_+1 ))
$ arrlit _performance

Der erste Befehl führt eine Operation für das Array aus und die dritte Zeile für eine Array-Liste.

Ausgabe:

  • Leistung des Arrays

  • Leistung der Array-Liste

Die Leistung der Array-Liste ist schneller und besser als die des Arrays.

Beispiel für ein Array in PowerShell

Das folgende Beispiel zeigt die Länge eines Arrays mit for-Schleife, foreach-Schleife und while-Schleife.

Eingang:

$testlist = 5.634, 4.512323, 3.312323, 13.2213213, 4.02324, 34.3334324, 34.04324, 45.4534324, 99.993234324, 11123234234 write-host("Printing the array elements")
$testlist
write-host("length of array")
$testlist.Length
write-host("fifth element in array")
$testlist(4) write-host("partial array")
$subList = $testlist(1..3) write-host("using for loop")
for ($i = 0; $i -le ($testlist.length - 1); $i += 1) (
$testlist($i) )
write-host("using forEach Loop")
foreach ($e in $testlist) (
$e
)
write-host("using while Loop")
$i = 0
while($i -lt 4) (
$testlist($i);
$i++
)
write-host("Assign values")
$testlist(1) = 10
$testlist

Ausgabe:

Hash-tabelle

Hash-Tabelle wird verwendet, um ein strukturiertes Array zu implementieren. In der Hash-Tabelle werden die Werte in einem Schlüsselwertformat gespeichert. Sie werden auch als Dictionary oder Associative Array bezeichnet.

Syntax:

()

Oder

( key1=”test1”;key2=”test2”;key3=”test3”)

Wobei key1, key2 und key3 die Schlüssel und test1, test2 und test3 die Werte sind.

Eingabe :

$testhashtable

Ausgabe:

Auf den Schlüssel oder die Werte kann folgendermaßen mit dem Operator .dot zugegriffen werden

Eingang:

$testhashtable.keys

Ausgabe:

Eingang:

$testhashtable.Values

Ausgabe:

Beispiel

Das folgende Beispiel zeigt alle Hashtabellenschlüssel und Hashtabellenwerte.

Eingang:

$testht = @( English = "85"; Tamil = "100"; maths = "100")
write-host("Printing all the hashtable keys")
$testht.keys
write-host("Printing all the hashtable values")
$testht.values
write-host("print Size")
$testht.Count
write-host("Add key-value")
$testht("Social") = "100"
write-host("Add key-value")
$testht.Add("ss", "110")
write-host("Size")
$testht.Count
write-host("Remove English")
$testht.Remove("English")
write-host("curentSize")
$testht.Count
write-host("sortinh by key")
$testht.GetEnumerator() | Sort-Object -Property key

Ausgabe:

Fazit - Array in PowerShell

Der Hauptvorteil eines Arrays ist die Speicherverwaltung. Sie können direkt aus dem Cache abgerufen werden, was den Abruf beschleunigt. Sie sind wiederverwendbar, sobald sie deklariert wurden, können sie mehrmals wiederverwendet werden.

Empfohlene Artikel

Dies ist eine Anleitung zu Array in PowerShell. Hier diskutieren wir die Einführung und Implementierung eines Arrays, einer Array-Liste und einer Hash-Tabelle in PowerShell. Sie können sich auch die folgenden Artikel ansehen, um mehr zu erfahren -

  1. PowerShell gegen CMD
  2. Top 7-Versionen von PowerShell
  3. Vorteile des Arrays
  4. Hauptunterschied zwischen PowerShell und Bash

Kategorie: