Auch an denjenigen, die schon über 20 Jahre mit der Bash arbeiten, sind Bash-Arrays bisher vielleicht vorbeigegangen. Dieser Artikel zeigt, wie man Arrays auch in der Bash verwenden kann, so wie von Perl und anderen Sprachen bekannt.
Arrays ermöglichen es, eine geordnete Folge von Werten eines bestimmten Typs zu speichern und zu bearbeiten. Allerdings erlaubt die Bash nur eindimensionale Arrays. Dabei werden zwei grundlegende Typen von Arrays unterschieden.
Indizierte Arrays verwenden positive Integer-Zahlen als Index. Sie sind meist sparse, die Indizes sind nicht unbedingt zusammenhängend. Wie in C und vielen anderen Sprachen beginnen die ganzzahligen Array-Indizes bei 0. Indizierte Arrays wurden zuerst bei der Bourne-ähnlichen Shell, der ksh eingeführt. Indizierte Arrays tragen immer das Attribut -a.
Assoziative Arrays (manchmal als Hash bezeichnet) verwenden beliebige nichtleere Zeichenketten als Index. Assoziative Arrays sind immer ungeordnet, sie assoziieren nur Index-Wert-Paare. Wenn Sie mehrere Werte aus dem Array abrufen, können Sie sich nicht darauf verlassen, dass diese in derselben Reihenfolge wiedergegeben werden, in der sie eingefügt wurden. Assoziative Arrays tragen immer das Attribut -A. Im Gegensatz zu indizierten Arrays müssen sie immer ausdrücklich deklariert werden.