2016-10-07 5 views
0

Ich habe eine Frage. Wenn ich eine tsv-Datei in libre office (linux excel) öffne, habe ich jede tabulatorgetrennte Zeichenfolge in jeder Spalte. Aber wenn ich awk benutze, habe ich nur den ersten Teil der Zeichenfolge erhalten, der durch Leerzeichen begrenzt ist.Excel vs awk (Trennzeichen)

FE: Libre Büro:

a  how much I need 0 b 
b  0 0  a 
c  0 15  c 
d  It is really wierd 0 d 

Und wenn ich benutze:

awk -v OFS="\t" '{print $2}' tsv_file 

how 
0 
0 
It 

Aber ich möchte

how much I need 
0 
0 
It is really wierd 

Alle Felder, die von Strings und Zahlen gefüllt werden, empfangen .

Vielen Dank.

Antwort

4

Verwenden Sie -F'\t', um awk mitzuteilen, dass die Eingabe tabulatorgetrennt ist. Es wird FS auf eine Registerkarte setzen. Die OFS Variable ist die Ausgabe Feld Trennzeichen/Trennzeichen.

$ awk -F'\t' '{ print $2 }' tsv_file 
+1

Wie einfach. Vielen Dank, ich habe es vergessen ... Problem gelöst .. – Vonton

Verwandte Themen