2016-04-18 3 views
0

ich eine große CSV-Datei .So sortieren müssen, wird ziemlich gutLinux-Befehl sort mit Trennzeichen in Daten

Art

Befehl.

Aber ich bin ein Problem, dass Trennzeichen ',' ist auch in den Daten vorhanden. So funktioniert das Sortieren nach Feldern mit ',' unerwartet.

Die Datei enthält Daten wie

Ahmedabad ,"7,Olive residency ", 380058 
Gandhinagar,"85,Kabir villa",38048 
Surat ,Binory Bunglows,589635 

Und ich bin mit sort Befehl wie

sort --field-separator=',' -s -k 3,3 bigfile.csv 

Welche nicht gewünschte Ausgabe nicht geben.

Kann mir jemand dabei helfen?

+0

Sie sollten wahrscheinlich nur in den sauren Apfel beißen und einen CSV-Parser verwenden. –

+0

oder reexportieren Sie die Daten mit einem Feld-Deliliter, der nicht in Ihren Daten enthalten ist. Das Zeichen ist oft sehr nützlich, da es schwierig (aber nicht unmöglich) ist, in ein Online-Dateneingabeformular einzufügen. Viel Glück. – shellter

Antwort

0
sort -k3 -t',' -nr bigfile.csv 
+0

Während dies die Frage beantwortet, ist es sehr, sehr skimpy. Sie sollten mindestens einen Satz der Diskussion und vielleicht einen Link zu der sort (1) -Dokumentation hinzufügen. –

+0

Außerdem empfehle ich, die Antwort vier Leerzeichen einzudrücken, um sie als Code anzuzeigen. –