(Vielen Dank an Axel Sander!)
# Datenelement setzen # $1 = Array Grundname # $2 = Position # $3 = Wert set_array() { ARRINT=$(( $2 / $MAXARR )) ARRMOD=$(( $2 % $MAXARR )) ARRNAME=${1}_${ARRINT} ARRTMP="$ARRNAME[$ARRMOD]=$3" eval $ARRTMP } # Datenelement lesen # $1 = Array Grundname # $2 = Position get_array() { ARRINT=$(( $2 / $MAXARR )) ARRMOD=$(( $2 % $MAXARR )) ARRNAME=${1}_${ARRINT} ARRTMP='${'"$ARRNAME[$ARRMOD]"'}' eval print $ARRTMP } # Maximale Größe fuer einzelnen Array MAXARR=4000
Einen Wert im Array GV1ARR speichern:
POS1=20 WERT1=123 set_array GV1ARR $POS1 $WERT1
Den Wert lesen:
TMP_WERT1=`get_array GV1ARR $POS1` echo $TMP_WERT1 123
Stand: 04.11.2009
EOF