Mehrdimensionales Array in Bash
- Grundlegende Methode zum Deklarieren eines mehrdimensionalen Arrays in Bash
- Deklarieren Sie ein zweidimensionales Array mit einem assoziativen Array in Bash
Ein mehrdimensionales Array ist ein sehr wichtiges Element für jedes Programm. Es wird hauptsächlich zum Erstellen einer Tabellenansicht der Daten und für viele andere Zwecke verwendet.
Dieser Artikel beschreibt, wie ein zweidimensionales Array erstellt wird. Außerdem werden wir das Thema mit notwendigen Beispielen und Erklärungen diskutieren.
Wir werden hier zwei verschiedene Methoden diskutieren.
Grundlegende Methode zum Deklarieren eines mehrdimensionalen Arrays in Bash
Dies ist die grundlegendste Methode zum Erstellen eines mehrdimensionalen Arrays. In unserem Beispiel unten erstellen wir ein sehr einfaches zweidimensionales Array.
Unten ist der Code für unser Beispiel.
ArrayOfArray_1=("Alen" "24")
ArrayOfArray_2=("Walker" "31")
MainArray=(
ArrayOfArray_1[@]
ArrayOfArray_2[@]
)
ArrayLength=${#MainArray[@]}
for ((i=0; i<$ArrayLength; i++))
do
name=${!MainArray[i]:0:1}
age=${!MainArray[i]:1:1}
echo "Name : ${name}"
echo "Age : ${age}"
done
Der obige Code zeigt, dass wir zwei verschiedene Arrays namens ArrayOfArray_1
und ArrayOfArray_2
deklariert haben. Danach haben wir unser Hauptarray deklariert, dessen Element diese beiden Arrays sind, die wir kürzlich deklariert haben.
Dann haben wir die Länge des Arrays für eine Schleife berechnet. Innerhalb der Schleife extrahieren wir die Daten aus diesen beiden Unterarrays, indem wir das Hauptarray indizieren.
Zuletzt echo
en wir das Endergebnis. Nach dem Ausführen des Skripts erhalten Sie eine Ausgabe wie die folgende.
Name : Alen
Age : 24
Name : Walker
Age : 31
Deklarieren Sie ein zweidimensionales Array mit einem assoziativen Array in Bash
Diese Methode ist etwas komplex. Diese Methode behandelt ein spezielles Bash-Skript-Array namens assoziatives Array.
Ein assoziatives Array ist ein spezielles Array, das Zeichenfolgenwerte als Schlüssel oder Index speichern kann. Es ist ähnlich wie bei den anderen Programmiersprachen.
Die allgemeine Syntax zum Deklarieren eines assoziativen Arrays lautet declare -A ArrayName
.
Unser Beispiel unten erstellt ein 2D-Array mit fünf Zeilen und sechs Spalten. Unten ist der Code für unser Beispiel.
declare -A Array2D
RowNum=5
ColumnNum=6
for ((i=1;i<=RowNum;i++)) do
for ((j=1;j<=ColumnNum;j++)) do
Array2D[$i,$j]=$RANDOM
done
done
f1="%$((${#RowNum}+1))s"
f2=" %9s"
printf "$f1" ''
for ((i=1;i<=RowNum;i++)) do
printf "$f2" $i
done
echo
for ((j=1;j<=ColumnNum;j++)) do
printf "$f1" $j
for ((i=1;i<=RowNum;i++)) do
printf "$f2" ${Array2D[$i,$j]}
done
echo
done
Im obigen Beispiel haben wir ein assoziatives Array namens Array2D
deklariert.
Danach haben wir zwei Variablen erstellt und ihnen einen ganzzahligen Wert zugewiesen. Dieser ganzzahlige Wert gibt die Anzahl der Zeilen und Spalten an.
Dann haben wir eine verschachtelte Schleife erstellt, die das Array mit der Zufallszahl füllt.
Jetzt sind wir mit der Deklaration und Organisation des Arrays fertig. Es ist Zeit zu sehen, wie unser 2D-Array aussieht.
Wir tun dies, indem wir einige Schleifen verwenden, wie im Code zu sehen ist. Wenn Sie das obige Skript ausführen, sehen Sie eine Ausgabe wie die folgende.
1 2 3 4 5
1 16700 5241 2599 24330 1662
2 23264 19557 10425 13413 25606
3 17987 4199 13598 23897 26734
4 24420 27830 24855 8165 13531
5 15495 18790 13347 12947 11826
6 23458 22838 137 32454 32441
Alle Codes in diesem Artikel sind in Bash geschrieben. Es funktioniert nur in der Linux Shell-Umgebung.
Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.
LinkedIn