Hallo Siechfred,
Spalte 0 1 2 3 4 5
20041215 2.3 812.2 48 32 20
20041215 31.9 12.2 34 12 54
»»
also jetzt glaube ich es kapiert zu haben.
ARRAY0 ARRAY1
Spalte 0 1 2 3 4 5 3
---------------------------- ------
ARRAY0 20041215 2.3 812.2 48 32 20 $nr 48
ARRAY0 20041215 31.9 12.2 34 12 54 $nr 34
ARRAY0 ist Liste[0], Liste[1] ... die zweite Liste, also ARRAY1, wird dran gehängt ... Liste[0][0], Liste[1][1]
Beides ergibt das sogannte zweidimensionale Array, was jedoch nur eine Referenz auf ein anderes Array ist (@), also auf das Array, dass sortiert werden soll.
Also anders ausgedrückt:
ARRAY0 = $a->[0]
ARRAY1 = $a->[1]
Die Splittung in beide anonyme Arrays erfolgt in der dritten Zeile:
map { [ $_, (split / /)[$nr] ] } @zeilen;
$_ enthält die ganze Zeile, wie es sich für einen Schleifendurchgang gehört, mit split / / wird die Zeile aufgeteilt und Spalte $nr "herauskopiert", $_ wird in $a->[0] abgelegt, $nr in $a->[1].
line1=echo $line0 | cut -d' ' -f4
# :-)
Ich hoffe, dass ich mich einigermaßen verständlich ausgedrückt habe :-)
Wenn an meiner Interpretierung nichts auszusetzen ist, habe ich es verstanden.
Super !!!
Mfg,
Jonny