BEZEICHNUNG
lessfile, lesspipe - »Eingabe-Präprozessor« für Less.
ÜBERSICHT
lessfile, lesspipe
BESCHREIBUNG
Diese Handbuchseite stellt eine Kurzbeschreibung der Befehle lessfile und lesspipe dar. Sie wurde für die Debian GNU/Linux-Distribution geschrieben, da die von Debian GNU/Linux bereitgestellten Eingabe-Präprozessor-Skripte nicht Teil des Originalprogramms sind.
lessfile und lesspipe sind Programme, mit denen Sie die Art der Anzeige einer Datei in less beeinflussen können. Das bedeutet, dass less automatisch Tar-Dateien öffnen, mit Gzip komprimierte Dateien dekomprimieren und sogar für Grafikdateien etwas Vernünftiges darstellen kann.
lesspipe schreibt den Inhalt bzw. die Informationen in die Standardausgabe und less liest diese, so wie sie ausgegeben werden. Das bedeutet, dass Sie nicht auf das Ende der Dekodierung warten müssen, bevor less Ihnen die Datei anzeigt. Es bedeutet außerdem, dass Sie ein »Byte N« anstelle eines N% als Ihre Dateiposition erhalten. Sie können bis zum Ende und wieder zurück suchen, um das N% zu erhalten, aber das bedeutet, dass Sie warten müssen, bis die Weiterleitung abgeschlossen ist.
lessfile schreibt den Inhalt oder die Informationen in eine Datei, die less dann lesen wird. Nachdem Sie fertig sind, löscht lessfile dann die Datei. Dies bedeutet, dass der Prozess beendet sein muss, bevor Sie sie sehen, aber Sie erhalten Prozentwerte (N%) von Anfang an.
VERWENDUNG
Setzen Sie einfach einen der folgenden zwei Befehle in Ihr Anmeldeskript (zum Beispiel ~/.bash_profile):
eval "$(lessfile)"
oder
eval "$(lesspipe)"
DATEITYPENERKENNUNG
Dateitypen werden anhand deren Erweiterungen erkannt. Derzeit werden folgende Erweiterungen unterstützt (gruppiert nach den Programmen, die damit umgehen können):
*.a
*.arj
*.tar.bz2
*.bz
*.bz2
*.deb, *.udeb, *.ddeb
*.doc
*.egg
*.gif, *.jpeg, *.jpg, *.pcd, *.png, *.tga, *.tiff, *.tif
*.iso, *.raw, *.bin
*.lha, *.lzh
*.tar.lz, *.tlz
*.lz
*.7z
*.pdf
*.rar, *.r[0-9][0-9]
*.rpm
*.tar.gz, *.tgz, *.tar.z, *.tar.dz
*.gz, *.z, *.dz
*.tar
*.tar.xz, *.xz
*.whl
*.jar, *.war, *.xpi, *.zip
*.zoo
BENUTZERDEFINIERTE FILTER
Es ist möglich, die für lesspipe und lessfile vorgegebenen Eingabeprozessoren zu erweitern und außer Kraft zu setzen, falls Sie spezielle Erfordernisse haben. Erstellen Sie ein ausführbares Programm mit dem Namen .lessfilter und speichern Sie es in Ihrem Home-Verzeichnis. Dies kann ein Shellskript oder auch ein Binärprogramm sein.
Es ist wichtig, dass dieses Programm einen korrekten Exit-Code zurückliefert: Es muss 0 zurückgeben, wenn der Filter die Eingabe verarbeitet, 1 falls der standardmäßige Filter lesspipe/lessfile die Eingabe verarbeiten soll.
Hier ist ein Beispielskript:
#!/bin/sh
case
"$1" in
*.extension)
extension-handler "$1"
;;
*)
# Dieses Format wird von diesem Filter nicht bearbeitet.
exit 1
esac
# Lesspipe muss
keine weitere Bearbeitung durchführen
exit 0
DATEIEN
~/.lessfilter
Ausführbare Datei, die benutzerdefinierte Verarbeitungen ausführen kann. Siehe den Abschnitt BENUTZERDEFINIERTE FILTER für weitere Informationen.
FEHLER
Gelegentlich zeigt less nicht den Inhalt der Datei an, die Sie sehen wollen, sondern die Ausgabe, die von Ihren Anmeldeskripten (~/.bashrc oder ~/.bash_profile) erstellt wird. Dies passiert dadurch, weil less Ihre aktuelle Shell zum Ausführen des Lesspipe-Filters verwendet. Die Bash schaut zuerst nach der Umgebungsvariable $BASH_ENV, expandiert deren Inhalt und verwendet den expandierten Wert als Name der zu lesenden und auszuführenden Datei. Falls diese Datei irgendetwas ausgibt, zeigt less dies an. Eine Möglichkeit zur Lösung des Problems besteht darin, die folgenden Zeilen an den Anfang Ihres Anmeldeskripts zu setzen, welches die Ausgabe erstellt:
if [ -z
"$PS1" ]; then
exit
fi
Dies testet, ob die Eingabeaufforderungsvariable $PS1 gesetzt ist, und falls nicht (was bei nicht-interaktiven Shells der Fall ist), das Skript beendet wird.
SIEHE AUCH
AUTOR
Diese Handbuchseite wurde von Thomas Schoepf <schoepf [AT] debian.org> für das Debian GNU/Linux-System geschrieben (darf aber auch von anderen verwendet werden). Der größte Teil des Texts wurde aus einer von Darren Stalder <torin [AT] daft.com> verfassten Beschreibung kopiert.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Mario Blättermann <mario.blaettermann [AT] gmail.com> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <debian-l10n-german [AT] lists.org>.