
Ich habe auf einem Linux-Rechner eine CSV-Datei wie diese:
value1 value2 name
1 2 a
2 3 b
4 5 c
n
Ich möchte die Einträge in dieser CSV-Datei in n
Textdateien aufteilen, wobei nur die entsprechenden Zahlen in dieser Datei durch Leerzeichen getrennt sind. N wird durch den Wert im Namen bestimmt.
Die obige CSV-Datei würde also folgendermaßen aussehen:
a.txt
enthaltend1 2
b.txt
enthaltend2 3
c.txt
enthaltend4 5
Falls zu einem bestimmten Thema mehrere Einträge vorhanden sind name
, sollten diese in einer Datei zusammengefasst werden.
Ex wenn es
1 2 a
21 31 a
dann sollte es eine Single geben a.txt
mit
1 2
21 31
Antwort1
Eigentlich ist es ganz einfach
awk '{print $1, $2 > $3 ".txt"}' file.csv
Nur wenn mehr als etwa tausend neue Dateien hinzukommen, dürften Sie in Schwierigkeiten geraten