Tom: Linux-bash, ein Buch mit $n Siegeln

Beitrag lesen

Hello,

result=( $(echo ${result[*]} | tr ' ' '\n' | sort -n) )   ##Ergebnis sortieren

ersetzt die Leerzeichen durch Absätze und sortierst dann. Wusste nich, dass leerzeichensparierte Zahlen ein Array sind, ist aber irgendwie logisch, oder? Bzw. dass das echo eines solchen Arrays einen leerzeichenseparierten Werte-String ergibt.

Ich kämpfe mich da auch noch durch.

declare -a arrayname=( 1 2 3 4 5 6 7 8 )

legt ein lokales (Namensraum) Array an. mit

echo ${arrayname[0]}

kannst Du das erste Element ausgeben. Mit

echo ${#arrayname[@]}   oder   echo ${#arrayname[*]}

bekommst Du die Anzahl der Elemente im Array. Ob das nun einen Unterschied macht, ob man * oder @ benutzt für die Ermittlung der Anzahl, habe ich noch nicht herausgefunden. Mit

echo ${arrayname[@]}

bekommst Du die Elemente es Arrays als Array ausgegeben. Mit

echo ${arrayname[*]}

erhältst Du die Elemente mit Leerzeichen getrennt ausgegeben.
Ich habe noch nicht herausgefunden, was man bei Elementen macht, die selber ein Leerzeichen enthalten sollen.

Außerdem kannst Du mit

unset arrayname[3]

ein Element aus dem Array entfernen, hier das vierte. Mit

arrayname=( ${arrayname[*]} )

kannst Du den Index der Arrays reorganisieren. Es gibt nur Numerische Indexe, die müssen aber nicht geschlossen sein. Du kannst also 1,3,4,5,88,100 als Index benutzen. Dann fehlen eben dazwischen ein paar Elemente. Die sind dann NULL

Naja, wann man nun ein Leerzeichen machen muss zwischen den einzelnen Steuerzeichen, Operanden und Operatoren und wann es nicht erlaubt ist, ist schon verzwickt genug. Aber enn ich nun an True und False denke, dann wird mir noch schlechter. Im Allgemeinen gilt wohl, dass 0 true und 1 (oder !=0) false ist. Nu n habe ich aber vorhin ein paar Vergleiche angestellt

echo $(( ${#arrayname[@]} < 4))
0
echo $(( ${#arrayname[@]} > 1))
1

Das passt doch dann aber nicht dazu ...

Ich muss also noch viiiiel lesen und üben :-)

Liebe Grüße aus Syburg bei Dortmund

Tom vom Berg

--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de