Ich lese aus einer eigenen conf Datei key=value Zeilenweise aus. Nun will ich die einem Array zuweisen, damit ich die Variablen nicht bei jedem Scriptupdate neu setzen muss:
declare -A setup if [ -e $setupconf ]; then cat $setupconf | while read line; do var1=$(echo $line | cut -f1 -d=) var2=$(echo $line | cut -f2 -d=) echo "$var1 => $var2" setup[$var1]=$var2 done fi
Das auslesen der Datei und setzen der var1 / var2 funktioniert. Leider wird der Array setup nicht richtig gesetzt.
Der Debug zeigt folgendes:
+ declare -A setup + '[' -e /root/setup/setup.conf ']' + read line + cat /root/setup/setup.conf ++ cut -f1 -d= ++ echo gitlab=n + var1=gitlab ++ cut -f2 -d= ++ echo gitlab=n + var2=n + echo 'gitlab => n' gitlab => n + setup[$var1]=n
Bei google hab ich die richtige Lösung nicht gefunden, vielleicht hat einer von euch einen Vorschlag.
THX