Thema: Shellskripte mit Aha-Effekt: Bash-Arrays
Der Grund für das nicht gelöschte Array Element auf Seite 2 dieses Artikels:
array=(Merkur Venus Erde Mars Jupiter Saturn Uranus Neptun)
INDEX=4
echo {#array[@]}8echo ${array[$INDEX]}Jupiter
unset ${array[$INDEX]}
echo ${#array[@]}8# Oha! Das sollte aber nun 7 sein, weil Jupiter ja geloescht wurde. Mal sehen:
echo ${array[$INDEX]}Jupiter# Ooops! Den gibt es ja immer noch!
ist die Anweisung:
da sie vor ihrer Ausführung von der Bash interpoliert wird und dann wie folgt aussieht:
unset Jupiter
Richtig wäre hier:
unset array[$INDEX]
Der Grund für das nicht gelöschte Array Element auf Seite 2 dieses Artikels:
array=(Merkur Venus Erde Mars Jupiter Saturn Uranus Neptun)
INDEX=4
echo {#array[@]}
8
echo ${array[$INDEX]}
Jupiter
unset ${array[$INDEX]}
echo ${#array[@]}
8
# Oha! Das sollte aber nun 7 sein, weil Jupiter ja geloescht wurde. Mal sehen:
echo ${array[$INDEX]}
Jupiter
# Ooops! Den gibt es ja immer noch!
ist die Anweisung:
unset ${array[$INDEX]}
da sie vor ihrer Ausführung von der Bash interpoliert wird und dann wie folgt aussieht:
unset Jupiter
Richtig wäre hier:
unset array[$INDEX]