![](https://seccdn.libravatar.org/avatar/4f02dad6eada67e941cf65a0b2485c63.jpg?s=120&d=mm&r=g)
Hallo, Am Dienstag, 16. Januar 2007 13:31 schrieb Andre Tann:
Hallo Liste,
mir liegt eine Texttabelle vor mit mehreren Spalten, getrennt mit Tab. Den Wert der dritten Spalte möchte ich gerne mit " umschließen. Die Spalten davor und danach sollen bleiben wie sie sind.
Aus
Spalte1 Spalte2 Spalte3 Spalte4
soll also werden
Spalte1 Spalte2 "Spalte3" Spalte4
Wie kann ich das anstellen? Warum muss es immer gleich awk und sed sein? bash tut's auch (wird oft unterschätzt siehe: c't 2/2007 ab Seite 178) zB so:
#!/bin/bash eingabe=${1} exec 4< ${eingabe} while read -u4 -a zeile do zeile[2]="\"${zeile[2]}\"" echo ${zeile[@]} done exec 4<&- In erster Näherung! Da ist mit Sicherheit noch Potential drin, bin aber zu faul das auszuloten. Zum Beispiel werden aus den Tabs bei der Ausgabe Leerzeichen. Könnte man auch über eine for-Schleife regeln (oder sed ;-) ). -- Mit freundlichen Grüßen Matthias Müller (Benutzer #439779 im Linux-Counter http://counter.li.org) PS: Bitte senden Sie als Antwort auf meine E-Mails reine Text-Nachrichten! Siehe auch: http://www.gnu.org/philosophy/no-word-attachments.de.html