Antwort1
Gestreifte Ausgabe erleichtert das Lesen langer Zeilen
Bearbeitung 2:
Ich habe ein spezielles Tool gefunden, ksystemlog
um die Standardprotokolldateien zu überwachen. Es ist möglicherweise die beste Alternative zum Überwachen der Protokolldateien. Es hebt jede zweite Zeile hervor, „streift“ das Textfenster und kann noch andere Dinge tun. Siehe die folgenden Links
https://apps.kde.org/ksystemlog/
https://www.ubuntupit.com/best-linux-log-viewer-and-log-file-management-tools/
und Sie können es aus dem Repository Universe installieren,
sudo apt update
sudo apt install ksystemlog
Ich lasse die anderen Alternativen in dieser Antwort, weil Sie ein solches Tool vielleicht für andere Zwecke als Logdateien benötigen und die Methode mit sed
ANSI-Sequenzen und less
sehr großen Textdateien arbeiten kann. Ich kenne den Viewer less
, er funktioniert bei mir gut.
Und schließlich fand ichglogg
auch im zweiten Link oben. Sie können damit auch sehr große Textdateien anzeigen, aber es scheint keine Hervorhebungen in jeder zweiten Zeile zu geben, keine „Streifen“. (Vielleicht bevorzugen Sie die GUI von glogg
gegenüber der Textmodus-Oberfläche von less
.)
sudo apt update
sudo apt install glogg
Bearbeitung 1:
Sie können es mit dem folgenden Shellscript versuchen, das Sie aufrufen können randig
. Es verwendet ANSI-Escape-Sequenzen, um die Farbe darzustellen und less
das Ergebnis anzuzeigen. Die anzuzeigende Datei wird als Parameter in das Shellscript eingegeben.
Die Verwendung ergibt außerdem xterm
ein sed
besseres Werkzeug (als das Original), schneller und angenehmer für die Augen.
#!/bin/bash
# xterm -fs 14 sets the font size
# xterm -bg '#2b2c2b' -fg '#dbdcdb' is grey background and white foreground
# ANSI:
# 'esc[33;40m' is yellow/brown on black background
# 'esc[0m' resets video
if test -s "$1"
then
tmpfile=$(mktemp)
sed -e "s/^/$(echo -en '\0033[33;40m')/;s/$/$(echo -en '\0033[0m')/;n" "$1" > "$tmpfile"
xterm -title "${0##*/} $1" -fa default -fs 14 -bg '#2b2c2b' -fg '#dbdcdb' -e less -r "$tmpfile" 2> /dev/null
rm "$tmpfile"
else
echo "
Usage ${0##*/} <text-file>
striped output helps reading long lines"
fi
Machen Sie das Shellscript ausführbar
chmod +x randig
und verwenden Sie es lokal mit
./randig file-to-view
oder verschieben Sie es in ein Verzeichnis, PATH
um es 'überall' zu verwenden mit
randig file-to-view
Kommentare:
Zeilenumbrüche verursachen Probleme für den Betrachter
less
. Machen Sie das Fenster daher möglichst breit genug, um die Zeilen ohne Umbruch anzuzeigen.Möglicherweise müssen Sie installieren
xterm
,sudo apt update sudo apt install xterm
Bitte passen Sie die Schriftgröße und -farben entsprechend Ihren Augen an :-)
Beispiel:
randig randig
Ende der Bearbeitungen
Original-Shellskript:
#!/bin/bash
blueback="\0033[1;44m"
whitefore="\0033[1;37m"
yellowfore="\0033[1;33m"
resetvid="\0033[0m"
inv=true
########################################################################
function doit {
ifs0=$IFS
IFS=$'\n'
while read -r line
do
if $inv
then
inv=false
echo -en "$yellowfore"
echo -E "$line"
else
inv=true
echo -en "$whitefore"
echo -E "$line"
fi
# sleep .5
done < "$1"
IFS=$ifs0
}
########################################################################
# main
########################################################################
echo -en "$blueback"
doit "$1" | less -r
echo -en "$resetvid"
Beispiel:
./randig randig