Dieser Befehl funktioniert. Es gibt die Feldtrennzeichen (in diesem Fall wird ein Komma):Warum verliert eine awk-Feldzuweisung das Ausgabefeldtrennzeichen?
$ echo "hi,ho"|awk -F, '/hi/{print $0}'
hi,ho
Dieser Befehl hat seltsamer Ausgang (es das Komma fehlt):
$ echo "hi,ho"|awk -F, '/hi/{$2="low";print $0}'
hi low
Einstellen des OFS
(output Feldseparator) Variable Ein Komma behebt diesen Fall, aber es erklärt dieses Verhalten nicht wirklich.
Kann ich awk
sagen, um den OFS zu behalten?
Oh, in der Zeit zurückzugehen und 'FS' zu haben bedeutet sowohl Eingabe als auch Ausgabe" Field Separator "und habe 'IFS getrennt 'und' OFS'-Variablen für die seltenen Fälle, in denen Sie Input- und Output-Feldseparatoren einzeln setzen möchten. Naja .... +1. –