Hallo Liste, ich schiebe noch eine Skriptfrage hinterher: Gegeben sei eine Textdatei mit mehreren Spalten und ca. 300 Zeilen. Feldtrenner ist ein Tab. In der ersten Spalte steht die Anrede, in der zweiten die E-Mail-Adresse, usw. Wie ich die Felder getrennt bekomme werde ich mir noch erarbeiten, vermutlich mit awk. Was ich aber nicht weiß ist, wie ich die Textdatei zeilenweise abarbeiten kann. Bisher kenne ich nur Konstrukte wie for file in *; do...; done Aber wie kann ich so eine Schleife den Zeilen einer Datei entsprechend durchlaufen? Danke für Hinweise und v.a. auch Seiten, wo ich so etwas gut nachlesen könnte. -- Andre Tann
ke, 2006-05-03 kello 08:23 +0200, Andre Tann kirjoitti:
Hallo Liste,
ich schiebe noch eine Skriptfrage hinterher:
Gegeben sei eine Textdatei mit mehreren Spalten und ca. 300 Zeilen. Feldtrenner ist ein Tab. In der ersten Spalte steht die Anrede, in der zweiten die E-Mail-Adresse, usw.
Wie ich die Felder getrennt bekomme werde ich mir noch erarbeiten, vermutlich mit awk. Was ich aber nicht weiß ist, wie ich die Textdatei zeilenweise abarbeiten kann. Bisher kenne ich nur Konstrukte wie
for file in *; do...; done
Aber wie kann ich so eine Schleife den Zeilen einer Datei entsprechend durchlaufen?
while read zeile ; do ... done < $file Gruß Kimmo
Andre Tann schrieb: ...
Wie ich die Felder getrennt bekomme werde ich mir noch erarbeiten, vermutlich mit awk. Was ich aber nicht weiß ist, wie ich die Textdatei zeilenweise abarbeiten kann. Bisher kenne ich nur Konstrukte wie
for file in *; do...; done
Aber wie kann ich so eine Schleife den Zeilen einer Datei entsprechend durchlaufen?
Wenn du ohnehin awk verwendest, kannst du das damit doch auch gleich machen. -- Viele Grüße ------------------------------------------------------------------------ Michael
Michael Behrens, Mittwoch, 3. Mai 2006 09:33:
Wenn du ohnehin awk verwendest, kannst du das damit doch auch gleich machen.
Nun, ich denke, ich sollte awk verwenden. Aber ich bin nicht sicher, ob das der richtige, sprich: einfachste Weg ist. Bin gerne für neue Vorschläge offen. Kannst Du ein Code-Schnipsel geben, welches ich dann für mich anpassen kann? Denn mit awk kenne ich mich auch noch nicht aus, sehe aber, daß ich das unbedingt lernen sollte. -- Andre Tann
Hallo, Am Wed, 03 May 2006, Andre Tann schrieb:
Gegeben sei eine Textdatei mit mehreren Spalten und ca. 300 Zeilen. Feldtrenner ist ein Tab. In der ersten Spalte steht die Anrede, in der zweiten die E-Mail-Adresse, usw.
Wie ich die Felder getrennt bekomme werde ich mir noch erarbeiten, vermutlich mit awk. Was ich aber nicht weiß ist, wie ich die Textdatei zeilenweise abarbeiten kann. Bisher kenne ich nur Konstrukte wie
for file in *; do...; done
Aber wie kann ich so eine Schleife den Zeilen einer Datei entsprechend durchlaufen?
while IFS=" " read -r anrede email ... ; do echo "$anrede, $email, ..." done < textdatei Oder awk -F'\t' '{ echo $1", "$2; }' textdatei du hast die Felder direkt in $1, $2 ... und die gesamte Zeile in $0. Wenn du mails schicken willst, dann bietet sich perl an, mit dem man leicht Header und Anhaenge kodieren kann usw... -dnh -- 14: Client-Server Wir wollen mehr als einen Rechner verkaufen. (Kristian Köhntopp)
participants (4)
-
Andre Tann
-
David Haller
-
K. Elo
-
Michael Behrens