Übersicht
`lesspipe` ist ein Dienstprogramm, das `less` dabei hilft, verschiedene Dateiformate über reine Textdateien hinaus zu verarbeiten. Wenn `less` eine Datei öffnet, wird das `lesspipe`-Skript ausgeführt, um den Dateiinhalt in die Standardausgabe zu konvertieren, die dann von `less` empfangen und angezeigt wird.
Hauptfunktionen
- Direkte Anzeige des Inhalts komprimierter Dateien (gzip, bzip2, xz usw.)
- Anzeige von internen Listen und Inhalten von Archivdateien (tar, zip, rar usw.)
- Extrahieren und Anzeigen von Text aus Nicht-Textdateien wie PDFs, Bildern usw. (erfordert entsprechende Tools)
- Beibehaltung der leistungsstarken Such- und Navigationsfunktionen von
less
Installation und Konfiguration
`lesspipe` wird auf den meisten Linux-Distributionen als Teil des `less`-Pakets oder als separates `lesspipe`-Paket bereitgestellt. Der Kernpunkt ist die Einstellung der Umgebungsvariable `LESSOPEN`, damit `less` `lesspipe` verwendet.
Installationsprüfung
Es ist auf den meisten Systemen standardmäßig installiert, aber Sie können mit dem folgenden Befehl prüfen, ob es vorhanden ist.
which lesspipe
Paketinstallation (falls erforderlich)
Wenn lesspipe nicht installiert ist, können Sie es mit dem folgenden Befehl installieren.
Debian/Ubuntu
sudo apt update && sudo apt install less
Fedora/RHEL
sudo dnf install less
Einstellung der Umgebungsvariable LESSOPEN
Um lesspipe zu aktivieren, müssen Sie die Umgebungsvariable LESSOPEN zu Ihrer Shell-Konfigurationsdatei (z. B. ~/.bashrc, ~/.zshrc) hinzufügen. Der genaue Pfad zu lesspipe kann je nach System variieren, prüfen Sie ihn daher mit which lesspipe.
Beispiel für LESSOPEN-Konfiguration
export LESSOPEN="|/usr/bin/lesspipe %s"
export LESS_ADVANCED_PREPROCESSOR=1
source ~/.bashrc
Eine typische Konfiguration sieht wie folgt aus. Wenden Sie die Änderungen sofort mit dem Befehl `source` an.
Erklärung der LESSOPEN-Variable
|: Bedeutet, dass die Ausgabe vonlesspipeüber eine Pipe anlessweitergeleitet wird.%s: Ist ein Platzhalter für den Pfad der Datei, dielesszu öffnen versucht.LESS_ADVANCED_PREPROCESSOR=1: Wird bei einigenlesspipe-Versionen verwendet, um erweiterte Vorverarbeitungsfunktionen zu aktivieren.
Anwendungsbeispiele
Wenn `lesspipe` korrekt konfiguriert ist, verarbeitet der Befehl `less` automatisch verschiedene Dateiformate, wenn Sie ihn wie gewohnt verwenden.
Anzeige des Inhalts einer gzip-komprimierten Datei
less my_log.gz
Zeigt den Inhalt einer `.gz`-Datei direkt mit `less` an, ohne sie zu entpacken.
Anzeige der internen Dateiliste eines tar-Archivs
less my_archive.tar.gz
Überprüft die interne Dateiliste einer `.tar.gz`-Datei mit `less`, ohne sie zu entpacken.
Anzeige der internen Dateiliste einer zip-Datei
less my_documents.zip
Überprüft die interne Dateiliste einer `.zip`-Datei mit `less`, ohne sie zu entpacken.
Anzeige des Textinhalts einer PDF-Datei
less document.pdf
Wenn Tools wie `pdftotext` installiert sind, können Sie den Textinhalt einer PDF-Datei mit `less` anzeigen.
Anzeige von Zeichenketten in Binärdateien
less /bin/ls
Bei Binärdateien können Sie die extrahierten Zeichenketten mit `less` anzeigen, indem Sie den Befehl `strings` verwenden.
Tipps & Hinweise
Tipps und Überlegungen zur effektiven Nutzung von `lesspipe`.
Benutzerdefinierte lesspipe-Skripte
Das Standard-lesspipe-Skript ist ein Shell-Skript. Sie können es bei Bedarf ändern oder Ihr eigenes lesspipe-Skript schreiben und es in der LESSOPEN-Variable angeben. Sie können beispielsweise zusätzliche Verarbeitungslogik für bestimmte Dateiformate hinzufügen.
- Kopieren und Ändern des vorhandenen
lesspipe-Skripts - Hinzufügen von Verarbeitungslogik für neue Dateiformate
- Angeben des Pfads zum benutzerdefinierten Skript in der
LESSOPEN-Variable
Leistungsüberlegungen
Wenn Sie sehr große komprimierte Dateien oder Archive mit lesspipe öffnen, kann die Extraktion und Konvertierung des Dateiinhaltes einige Zeit in Anspruch nehmen. In diesem Fall kann es zu einer leichten Verzögerung kommen, bis less gestartet wird.
Sicherheitshinweise
lesspipe führt externe Befehle zur Verarbeitung von Dateien aus. Daher können Sicherheitsprobleme auftreten, wenn Sie nicht vertrauenswürdige lesspipe-Skripte verwenden oder wenn bösartige Dateien über lesspipe verarbeitet werden. Verwenden Sie immer lesspipe aus vertrauenswürdigen Quellen und seien Sie vorsichtig bei der Einstellung der LESSOPEN-Variable.
Überprüfung unterstützter Dateiformate
Durch die Überprüfung des Inhalts des auf Ihrem System installierten lesspipe-Skripts können Sie feststellen, welche Dateiformate unterstützt werden und welche externen Tools verwendet werden. Sie können den Skriptinhalt normalerweise mit dem Befehl cat /usr/bin/lesspipe (oder dem entsprechenden Pfad) anzeigen.