befehl/option gesucht: datei anzeigen, leerzeilen auslassen

bsd-yusa

semi-pro geek
es wird vorher der output von top -I in die datei top-I-output umgeleitet.
bei einem cat top-I-ouput wird alles so dargestellt wie man es normalerweise auf dem schirm sieht.
ich hätte nun gerne dass die leerzeilen ausgelassen werden.
geht es auch, dass nur zwei aufeinander folgende leerzeilen (wenn vorhanden) ausgelassen werden?
das ganze soll möglichst ohne schleifen funktionieren, am besten wär' wenn es einfach eine option zu einem standard befehl (cat, grep,..) geben würde. der befehl sollte in etwa so aussehen: cat -z1 top-I-output
dieser befehl sollte eben leerzeilen auslassen, alle leerzeilen
und cat -z2 top-I-output sollte nur zwei aufeinander folgende leerzeilen auslassen.
ich hoffe ich habe mich verständlich ausgedrückt und ihr wisst was ich meine.
 
Code:
grep -v ^$

Damit wird alles gegrept was anfängt unf aufhört aber nichts dazwischen hat... also eine Leerzeile. Die -v Option zeigt alles an was _nicht_ matcht.

Wie du das mit den "mindestens zwei leehrzeilen" machst... keine Ahnung, sollte aber auch per (e)grep gehen.

Grüße!
 
super! funktioniert.
danke. genau das habe ich gesucht/gebraucht :)

Wie du das mit den "mindestens zwei leehrzeilen" machst... keine Ahnung,

1. checken, wieviele leerzeilen vorhanden sind und ob sie "single-leerzeilen" sind oder eben zwei oder mehrere hintereinander
2. beim letzteren match zuschlagen
aber bevor ich mich für diese variante ^^ entscheide werde ich $ man egrep ;)

nochmal vielen dank für deinen input :)

mfg
 
Zuletzt bearbeitet:
Zurück
Oben