E-Mail-Protokolle sind unglaublich schwer zu lesen. Wie kann ich eine Leerzeile zwischen den Zeilen in der Befehlszeile ausgeben? Angenommen, ich greife nach dem Protokoll. Auf diese Weise werden mehrere umbrochene Zeilen nicht verwechselt.
E-Mail-Protokolle sind unglaublich schwer zu lesen. Wie kann ich eine Leerzeile zwischen den Zeilen in der Befehlszeile ausgeben? Angenommen, ich greife nach dem Protokoll. Auf diese Weise werden mehrere umbrochene Zeilen nicht verwechselt.
Antworten:
sed G
# option: g G Copy/append hold space to pattern space.
Gwird nicht oft verwendet, ist aber nett für diesen Zweck. sed verwaltet zwei Pufferbereiche: den "Musterbereich" und den "Haltebereich". Die Linien verarbeitet durch Sed fließen normalerweise durch den Musterraum als verschiedene Befehle auf seinen Inhalt arbeiten ( s///, p, etc.); Der Speicherplatz beginnt leer und wird nur von einigen Befehlen verwendet.
Der GBefehl fügt eine neue Zeile und den Inhalt des Haltebereichs an den Musterbereich an. Das obige sed- Programm Gfügt niemals etwas in den Hold-Bereich ein, sondern fügt effektiv nur eine neue Zeile an jede verarbeitete Zeile an.
-eda wir dort nur ein einziges Befehlsargument brauchen.
Ist es das was du suchst?
grep SPAM mail.log | while read -r line; do echo; echo $line; done
read -r, um zu vermeiden, dass Backslash-Zeichen als Sonderzeichen behandelt werden.
Wenn es mehr ist als nur nachzuschauen, ziehe ich es vor, sie in eine Textdatei zu senden und mit einem Texteditor zu öffnen, damit Sie die Zeilen so einstellen können, dass sie umgebrochen werden oder nicht, und einfach suchen können ... und die unerwünschten Zeilen löschen und so weiter ohne viele Befehle eingeben müssen.
cat file.log > log.txt
und gedit log.txtoder ein Terminal-Editor wie Nano
Edit: oder was cp file.log log.txtist natürlich einfacher und schneller ... dank KeithB Kommentar
catnicht cp?
cpwäre einfacher und schneller ... lol - ich lese die anderen Antworten Umgang mit grepund awkso schrieb ich ihm die catArt und Weise , aber ich bin zu korrigieren , dass dank
whatever | sed Gsollten den Trick tun.