Eine kürzere Form der bereits vorgeschlagenen Antwort könnte die folgende sein:
awk NF file
Jede awk
Skript folgt die Syntax condition {statement}
. Wenn der Anweisungsblock nicht vorhanden ist, wird awk
den gesamten Datensatz (Zeile) drucken, falls condition
nicht Null ist.
NF
Variable in awk
ist die Anzahl der Felder in der Zeile. Wenn also die Zeile nicht leer ist, enthält NF
einen positiven Wert, der die Standardaktion awk
auslöst (die gesamte Zeile wird gedruckt). Im Falle einer Leerzeile ist NF
Null und die Bedingung ist nicht erfüllt, so dass awk
nichts tut.
oder
awk '!/^$/' file
^$
ist die regex für eine leere Zeile. Die 2 /
wird benötigt, um awk
verstehen die Zeichenfolge ist eine Regex. !
ist die Standard-Negation.
'awk '/./' MyFile'? 'awk NF' http://www.unix.com/shell-programming-scripting/84923-remove-all-blank-lines-shell-awk.html http://www.tek-tips.com/viewthread.cfm ? qid = 1282604 – ant
Ich würde sagen, es ist Zeit, die angenommene Antwort zu ändern, außer dass ich denke, dass @ olivs Antwort sogar besser ist als die mit 25 Upvotes, also möchte ich ihr Zeit geben, aufzustehen. – Noumenon