Einführung in Array unter Unix

Array ist eine Datenstruktur, die eine Gruppe von Elementen enthält, die für denselben Datentyp typisch sind, z. B. Zeichenfolge, Ganzzahl, Gleitkomma usw. Die Array-Datenstruktur ist auch in Unix verfügbar.

  • Array in Unix: Dies ist die Sammlung von Elementen, die möglicherweise denselben Datentyp haben oder nicht.
  • Index: Array ist nullbasiert, dh Elemente des Arrays werden vom Index beginnend mit Null referenziert.
  • Größe: Die Größe des Arrays ist nicht begrenzt

Syntax des Arrays in Unix

Es gibt verschiedene Möglichkeiten, ein Array in Shell-Skripten zu bilden. Lassen Sie uns jeden von ihnen im Detail durchgehen:

1. Indirekte Deklaration: Hier wird für einen bestimmten Index unterwegs ein Wert zugewiesen. Beispiel dafür ist unten erwähnt.

Syntax:

array_name(index) = value

2. Explizite Deklaration: Zuerst wird das Array deklariert und später werden ihm die Werte zugewiesen. Declare ist ein integriertes Schlüsselwort, und -a ist eine integrierte Leseoption, mit der Werte gelesen und zugewiesen werden können.

Syntax:

declare -a array_name

3. Verbundzuweisung: Hier wird das Array mit mehreren Werten gleichzeitig deklariert.

Syntax:

array_name = (value1 value2 value3 . . . valueN)

Oder

array_name = ((0)=value1, (1)=value2, (2)=value3..)

Hier ist der Index optional, wenn der Index nicht angegeben ist. Der Wert wird dem letzten Index plus eins zugewiesen

Wie funktioniert ein Array unter Unix?

Wir haben die verschiedenen Möglichkeiten zum Erstellen eines Arrays in Unix kennengelernt. Lassen Sie uns nun fortfahren und verschiedene Operationen sehen, die auf dem Unix-Array ausgeführt werden können.

1. Wir werden das Array von Namen erstellen

2. Um auf alle Elemente des Arrays zuzugreifen, verwenden Sie entweder (*) oder (@).

Code:

echo $(first_name(*))
echo $(first_name(@))

Hinweis: Der Befehl echo ist ein in Unix integrierter Befehl, mit dem der Text oder die Zeichenfolge angezeigt wird, die als Argument an den Befehl übergeben wird. Die Syntax von 'Echo' wird unten erwähnt.

Syntax:

echo (options) (arguments)

3. Über den Index auf ein bestimmtes Element der Zeichenfolge zugreifen.

Code:

echo $(first_name(0))
echo $(first_name(1))
echo $(first_name(2))

Ausgabe:

Hinweis: () geschweifte Klammern verweisen auf den Inhalt des Arrays.

4. Drucken der Elemente in einem Bereich. Die Syntax dafür lautet wie folgt:

Syntax:

echo $array_name(which element):starting_index:count_element)

Machen wir uns damit vertraut.

Code:

echo $(first_name(@):0:2)
echo $(first_name(@):2:3)
echo $(first_name(0):1:2)

Ausgabe:

@ - bezieht sich auf alle Elemente des Arrays
Im Kommando echo $ (Vorname (@): 0: 2)
@ Betrachte alle Elemente des Arrays. 0 - bedeutet, mit diesem bestimmten Index zu beginnen, und 2 zeigt die Anzahl der Elemente ab dem Startpunkt an
2 zeigt eine Reihe von Elementen ab dem Startpunkt an

In diesem Befehl geben Sie $ (first_name (0): 1: 2) zurück.
0 - Betrachte das 0. Element des Arrays. 1- ist der Startpunkt und 2 - ist die Anzahl der Elemente vom Startpunkt

5. Um die Größe des Arrays zu ermitteln

Code:

echo $(#first_name(@))
or
echo $(#first_name(*))

Ausgabe:


Hinweis: # wird verwendet, um die Länge eines bestimmten Elements eines Arrays zu ermitteln.

6. So ermitteln Sie die Länge eines bestimmten Elements eines Arrays

Code:

echo $(#first_name(0))

Ausgabe :

7. Um den Index des Arrays abzurufen, verwenden Sie den folgenden Befehl.

Code:

echo $(!first_name(@))

Ausgabe:


Hinweis :! wird verwendet, um den Index des Arrays abzurufen.

8. Um das Array im Skript zu löschen, wird der Befehl unset verwendet. Es ist ein eingebauter Befehl, um ein Array oder ein beliebiges Element des Arrays zu zerstören

Syntax:

unset array_name

Code:

unset first_name

9. Löschen eines Elements an einem bestimmten Index

unset first_name(2)

Dadurch wird das Element am Index 2 gelöscht.

10. Um nach einem bestimmten Muster im Array zu suchen.

Code:

echo $(first_name(@)/*(aA)*/)

Ausgabe:

Hier bezieht sich Vorname (@) auf alle Elemente des Arrays
/ Zu durchsuchendes Muster /: Es ist das Muster, das im Array oder seinem Element gesucht werden soll.
Es wird 1 zurückgegeben, wenn die Übereinstimmung gefunden wurde, und 0, wenn keine Übereinstimmung gefunden wurde.

11. Nach einem bestimmten Muster suchen und es im angegebenen Array ersetzen.

Code:

echo $(first_name(@)//a/A)

Vorname (@): Berücksichtigen Sie alle Elemente des Arrays
// Zu durchsuchendes Muster / Ersatzzeichenfolge /: Search & Replacement String

Ausgabe:

Vorname (2): Such- und Ersetzungsoperationen, die für das Element mit Index 2 ausgeführt werden sollen.

Während des Such- und Ersetzungsvorgangs werden keine Änderungen am ursprünglichen Wert des Arrays vorgenommen. Es wird ein neuer Wert zurückgegeben, der in derselben oder in verschiedenen Variablen gespeichert werden kann.

12. Um eine Operation an den Elementen eines Arrays durchzuführen, können wir die Schleifen verwenden. Wie jede andere Programmiersprache unterstützt die Bourne-Shell zwei Arten von Schleifen, nämlich for loop und while loop. Schauen wir uns ein Beispiel an, um mit der for-Schleife über ein Array zu iterieren.

Code:

Arr = (1 2 3 4 5)
for i in “$(Arr(@))”
do
echo $i
done

Ausgabe :

Ebenso können Sie ein Array auch mit einer while-Schleife durchlaufen.

Bitte beachten Sie, dass es in Unix verschiedene Arten von Shells gibt, wie Bash, K-Shell, Bourne-Shell usw. Shell ist nichts anderes als eine Schnittstelle zu Unix-Systemen mit verschiedenen Befehls- und Funktionssätzen. Basierend auf verschiedenen Arten von Shell gibt es unterschiedliche Syntax für das Array und seine Operationen, wobei die Syntax der oben diskutierten Befehle geringfügig variiert.

Bash Shell erlaubt die Array-Operationen auch für die Variablen, ohne dass die Variablen explizit als Array deklariert werden. Schauen wir uns das Beispiel an, um die obige Aussage besser zu verstehen.

Code:

String_variable = India is a democratic country
echo “$(string(0))”

Ausgabe:

Fazit

Grundsätzlich ist Array eine Sammlung von Elementen, die an einem zusammenhängenden Speicherort gespeichert sind. Der Zweck beim Bilden eines Arrays besteht darin, mehrere Elemente desselben Typs zusammen mit demselben oder verschiedenen Datentypen zu speichern. In einem praktischen Szenario ist die mangelnde Kompatibilität der Array-Struktur mit verschiedenen Shell- und komplexen Strukturen die Ursache für die mangelnde Beliebtheit.

Empfohlene Artikel

Dies ist eine Anleitung zu Array in Unix. Hier diskutieren wir die Syntax und Funktionsweise von Arrays in Unix zusammen mit verschiedenen Beispielen und der Code-Implementierung. Sie können sich auch die folgenden Artikel ansehen, um mehr zu erfahren -

  1. Linux Proxy Server
  2. Arten von Shells unter Linux
  3. Benutzer in Linux erstellen
  4. Unix-Dateisystem
  5. Leitfaden für die For-Schleife in Shell-Skripten