Inhaltsverzeichnis
X=(eins zwei drei vier fuenf sechs sieben acht neuen)
komplettes Array ausgeben (einzeilig)
host: # echo ${X[*]}
eins zwei drei vier fuenf sechs sieben acht neuen
oder
host: # echo ${X[@]}
eins zwei drei vier fuenf sechs sieben acht neuen
komplettes Array ausgeben (pro Eintrag eine Zeile)
for (( i=0; i<${#X[@]}; i++ ))
do
echo "$i: ${X[$i]}"
done
Ausgabe:
0: eins 1: zwei 2: drei 3: vier 4: fuenf 5: sechs 6: sieben 7: acht 8: neuen
Array rückwärts ausgeben
for (( i=${#X[@]}-1 ; i>=0 ; i-- ))
do
echo "${X[i]}"
done
Länge eines Array-Eintrages ausgeben
host: # echo ${#X[7]}
5
Array Länge (Anzahl der Einträge) ausgeben
host: # echo ${#X[@]}
9
gezielt Bereiche eines Arrays ausgeben
ab Index 0, 3 Elemente
host: # echo ${X[@]:0:3}
eins zwei drei
ab Index 2, 4 Elemente
host: # echo ${X[@]:2:4}
drei vier fuenf sechs
ab Index 3 alle
host: # echo ${X[@]:3}
vier fuenf sechs sieben acht neuen
letztes Array-Element ausgeben
echo ${X[${#X[@]} - 1]}
host: # X=(schwupp die wupp 234)
host: # echo ${X[*]}
schwupp die wupp 234
host: #
host: # echo ${X[${#X[@]} - 1]}
234
Eintrag eines Arrays beschnitten ausgeben
host: # echo ${X[6]}
sieben
host: # echo ${X[6]:0:5}
siebe
host: # echo ${X[6]:2:4}
eben
host: # echo ${X[6]:2:3}
ebe
bei Array-Ausgabe String suchen und ersetzen
Achtung: nur die Ausgabe wird ersetzt, nicht der Array-Inhalt!
host: # echo ${X[@]/sieben/zwerge}
eins zwei drei vier fuenf sechs zwerge acht neuen
Einträge an bestehendes Element anhängen
host: # X=(${X[@]} zehn elf)
host: # echo ${X[*]}
eins zwei drei vier fuenf sechs sieben acht neuen zehn elf
Array Element löschen
host: # X=(${X[@]/fuenf/})
host: # echo ${X[@]}
host: # eins zwei drei vier sechs sieben acht neuen zehn elf
Array Elemente addieren
host: # X=(2 3 3 2 2 2 2 2 2)
for (( i=0; i<${#X[@]}; i++ ))
do
((A=$A+${X[$i]}))
done
host: # echo $A host: # 20