csv Datei um unnötige Spalten erleichtern

Exports aus Datenbanken kommen ja gerne als CSV-Datei daher, diese sind mit Kommas separiert, manchmal sind aber in den Werten selber auch Kommas also z.B.
"hubi","hubionmac","90,95€",22
Das Problem ist also, dass man nicht einfach an Hand der , die Zeile aufsplitten kann, sondern auch darauf achten muss, ob ein Komma in Anführungszeichen eingeschlossen ist oder nicht.
Ich wollte dafür ursprünglich ein kleines Ruby-Skript schreibe, scheiterte aber an meinen noch recht bescheidenen Kenntnissen von passenden regulären Ausdrücken.
Damit aber nun jetzt zumindest schon mal eine halbwegs schnelle Lösung (die könnte man auch noch etwas verbessern, gerade was das schreiben der Datei angeht) da ist, habe ich dieses Script geschrieben, welches sich einer etwas längeren awk-Zeile bedient, um die Werte einer solchen CSV-Datei auszulesen.
Man wählt die CSV-Datei aus, gibt des Skript auf dem Weg noch die Spalten mit, die man haben möchte und schon wird ein neue CSV-Datei mit den gewünschten Spalten-Werten erstellt und geöffnet.
Den Quellcode bekomme ich leider ums Verrecken hier nicht fehlerfrei gepostet, da in dem awk-Kommando anscheinend deutlich zu viele Sonderzeichen auftauchen ;-P
Die Datei Skript-Datei also hier zu Download:
csv convert.scpt

One thought on “csv Datei um unnötige Spalten erleichtern

  1. hubi says:

    Kleiner Zusatz: die AWK Zeile ist nicht gerade auf meinem eigenen Mist gewachsen, sondern von hier
    http://www.unix.com/shell-programming-scripting/100633-convert-csv-file-double-quoted-strings-pipe-delimited-file-2.html

Leave a Reply