Problem

hi leute

folgende Aufgabe bekomme ich nicht hin:

muster der eingabedatei

nov 1 kk ff ee
nov 1 mm bb
nov 2 ss ee rr
nov 2 cc vv
nov 3 aa ww
nov 3 irgendwas
nov 3 usw
.
.
.

daraus brauche ich für den jeweiligen Tag (1,2,3…)
ein file mit den Sätzen des jeweiligen Tages:

output file1
nov 1 kk ff ee
nov 1 mm bb

output file2
nov 2 ss ee rr
nov 2 cc vv

output file3
nov 3 aa ww
nov 3 irgendwas
nov 3 usw

Problem: ich habe auf meiner SUN Solaris nur script und perl

wer kann wie helfen?

mfg Arne

Hi Arne,

nov 1 kk ff ee
nov 1 mm bb
nov 2 ss ee rr
nov 2 cc vv
nov 3 aa ww
nov 3 irgendwas
nov 3 usw

Diese Zeilen liest du mit Perl in ein Array @array1 ein. Jede Zeile ist also ein Array-Element.

In einer Schleife arbeitest du jedes @array1-Element ab, nimmst es, zerhackst es an den Leerzeichen und schiebst die Einzelteile wieder in ein Array @array2.

Nun hast du jeweils ein @array2 mit folgender Struktur:
$array2[0]=nov
$array2[1]=1

Anhand des zweiten Elements, also $array2[1], kannst du nun das File herausfinden.
Dann speicherst du das momentan bearbeitete Element aus @array1 (also die eigentliche Zeile) in dieses File (anfügen).

Im Prinzip bildest du deine Eingabedatei also auf zweidimensionales Array (oder auch einfach Tabelle), liest in einer Schleife in jeder Zeile das Element der 2. Spalte und schreibst dann die Zeile in deine Datei.

War das verständlich?

Ciao, Bill

Hi Bill,

(siehe Antwort im Brett ‚Progammierung allgemein‘).

Diese Zeilen liest du mit Perl in ein Array @array1 ein. Jede
Zeile ist also ein Array-Element.

(funzt bei 100 MB und mehr nur noch auf sehr gut ausgebauten Maschinen…)

Gruß
Bernhard