less

Funktion

less ist ein Pager wie more

Syntax

less [-[+]aBcCdeEfHimMnNqQrsSuUw] [-b Puffer] [-h Zeilen] [-j Zeile] [-k Schlüsseldatei] [-{oO} Datei] [-p Muster] [-P Prompt] [-t Tag] [-T Tagdatei] [-x Tab] [-y Zeilen] [-[z] Zeilen] [+Lesskommando] [Dateiname] ...

Beschreibung

less gibt eine (oder mehrere) Datei(en) seitenweise auf dem Bildschirm aus. Im Unterschied zu more erlaubt less auch das Zurückblättern in Texten, die aus einer Pipeline gelesen werden. Die voreingestellten Tastaturkommandos sind an die von more und elvis angelehnt, sie lassen sich aber vom Anwender mit Hilfe des lesskey-Kommandos beliebig neu definieren.

Kommandos

Die folgenden Tastaturkommandos zur Steuerung der Bildschirmausgabe sind definiert. Alle Kommandos können von einer ganzen Zahl N eingeleitet werden, die die Anzahl der Wiederholungen dieses Kommandos angibt.

h | H
gibt einen Hilfstext aus
LEERZEICHEN | CTRL-V | f | CTRL-F
blättert eine Bildschirmseite vorwärts; wenn eine Zahl vorangestellt ist, werden diese Anzahl Zeilen weitergeblättert
z
wie Leerzeichen; wenn eine Zahl vorangestellt ist, wird diese Zahl zur neuen Seitenlänge auch für die weiteren Seiten
RETURN | CTRL-N | CTRL-E | CTRL-J
scrollt den Bildschirm eine (oder die gegebene Anzahl) Zeilen weiter
d | CTRL-D
blättert einen halben Bildschirm (oder die gegebene Anzahl Zeilen) weiter; wenn eine Zahl angegeben ist, wird sie zur Standardweite für alle folgenden CTRL-D und CTRL-U-Kommandos
b | CTRL-v
blättert einen Bildschirm oder die gegebene Anzahl Zeilen zeilenurück
w
wie ESC-v; die gegebene Zahl wird aber der neue Standardwert für das Zurückblättern
y | CTRL-Y | CTRL-P | k | CTRL-K
scrollt den Bildschirm um eine (oder die gegebene Anzahl) Zeile(n) zurück
u | CTRL-U
blättert einen halben Bildschirm (oder die gegebene Anzahl Zeilen) zurück
r | CTRL-R | CTRL-L
schreibt den aktuellen Bildschirm neu
R
schreibt den Bildschirm neu; dabei wird die gesamte gepufferte Eingabe verworfen
F
scrollt den Bildschirm vorwärts; dabei wird versucht weiterzulesen, auch wenn das Dateiende bereits erreicht worden ist
g | < | CTRL-<
geht zur ersten Zeile oder der Zeile mit der entsprechenden Zahl
G | > | CTRL->
geht zur letzten Zeile oder zu der Zeile mit der entsprechenden Zahl (vom Dateiende gezählt)
p | %
macht nur Sinn, wenn es von einer Zahl zwischen 0 und 100 eingeleitet wird, und geht dann zu der dieser Prozentzahl entsprechenden Stelle; wenn von der Standardeingabe gelesen wird, kann dieses Kommando erst benutzt werden, nachdem die Eingabe abgeschlossen ist
}
wenn eine geschweifte Klammer auf der ersten Bildschirmzeile steht, wird die Anzeige so gescrollt, daß die dazugehörende schließende Klammer auf der letzen Bildschirmzeile steht; wenn mehr als eine geschweifte Klammer auf der ersten Zeile geöffnet wird, kann mit dem Zahlenargument bestimmt werden, welche Klammer referenziert werden soll
{
wenn die geschweifte Klammer auf der letzten Bildschirmzeile steht, wird der Bildschirm so gerollt, daß die korrespondierende Klammer auf der ersten Zeile angezeigt wird
(
das gleiche mit runden Klammern
)
dito
[
diesmal mit eckigen Klammern
]
auch nichts neues
ESC-CTRL-F
wie {; es werden die dem Kommando folgenden beiden Zeichen als Klammern interpretiert und entsprechend bearbeitet
ESC-CTRL-B
wie }; es werden die dem Kommando folgenden beiden Zeichen als Klammern interpretiert und entsprechend bearbeitet
m
gefolgt von einem Kleinbuchstaben, markiert die aktuelle Position mit diesem Buchstaben
' | CTRL-X CTRL-X
gefolgt von einem Kleinbuchstaben, kehrt zurück zu der mit diesem Buchstaben markierten Stelle
/Muster
sucht vorwärts nach dem Muster; eine passende Zeile wird als erste Bildschirmzeile angezeigt; das Muster kann reguläre Ausdrücke enthalten (ed-Syntax); mit einem Zahlenargument N kann auch das N-te Auftreten des Musters gesucht werden; die Suche beginnt in der zweiten Bildschirmzeile, wenn nicht durch die Kommandozeilenoptionen `-a' oder `-j' ein anderes Verhalten eingestellt ist; für das erste Zeichen vom Muster stehen folgende Sonderzeichen zur Verfügung:
!
sucht nach einer Zeile, die das Muster nicht enthält
*
durchsucht mehrere Dateien; wenn die Suche bis zum Dateiende erfolglos ist, wird die nächste Datei aus der Kommandozeilenliste durchsucht
@
beginnt die Suche in der ersten Datei aus der Kommandozeilenliste, unabhängig davon, welche Datei aktuell angezeigt wird; auch die Kommandozeilenoptionen `-a' und `-j' werden ignoriert

?Muster
sucht rückwärts nach einer Zeile mit dem Muster; die Suche beginnt vor der ersten Bildschirmzeile; folgende Sonderzeichen können als erstes Zeichen vom Muster eingesetzt werden:
!
sucht eine Zeile, die das Muster nicht enthält
*
durchsucht mehrere Dateien; wenn das Muster bis zum Dateianfang erfolglos ist, wird die der aktuellen Datei vorhergehende aus der Kommandozeilenliste durchsucht
@
beginnt die Suche auf der letzten Zeile der letzten Datei aus der Kommandozeilenliste, unabhängig von der aktuellen Datei und den Kommandozeilenoptionen `-a' und `-j'

ESC-/Muster
das gleiche wie `/*Muster'
ESC-?Muster
das gleiche wie `?*Muster'
n
wiederholt die letzte Suche; die Sonderzeichen `*' und `!' behalten ihre Bedeutung, `@' wird ignoriert

N
wiederholt die letzte Suche in umgekehrter Richtung
ESC-n
wiederholt die letzte Suche und sucht in der nächsten (vorhergehenden) Datei weiter, wenn das Dateiende (der Dateianfang) erreicht ist
ESC-N
wiederholt die Suche rückwärts und setzt die Suche in weiteren Dateien fort
:e [Dateiname ...]
zeigt die benannte Datei an; wenn keine Datei angegeben ist, wird die aktuelle Datei neu angezeigt; ein Prozentzeichen `%' im Dateiname wird durch den Namen der aktuellen Datei ersetzt; das Nummernzeichen `#' wird durch den Namen der zuvor angezeigten Datei ersetzt; die neue Datei wird in die Kommandozeilenliste der Dateien eingereiht, so daß sie bei den folgenden `:n' und `:p' Befehlen erreicht werden kann; wenn mehrere Dateinamen angegeben sind, werden alle Dateinamen in die Kommandozeilenliste eingefügt
CTRL-X CTRL-V | E
das gleiche wie `:e'
:n
zeigt die nächste Datei aus der Kommandozeilenliste an
:p
zeigt die vorhergehende Datei aus der Kommandozeilenliste an
:x
zeigt die erste (oder N-te) Datei aus der Kommandozeilenliste an
= | CTRL-G | :f
zeigt den Namen der aktuellen Datei und die Position in der Datei
-
,gefolgt von einer der unten aufgeführten Kommandozeilenoptionen, ändert eben diese Option und zeigt die neue Einstellung an; wenn zu einer Option ein Zahlenargument oder eine Zeichenkette angegeben werden müssen, kann dieses Argument nach dem Optionsbuchstaben interaktiv angegeben werden
-+
,gefolgt von einer der unten beschriebenen Kommandozeilenoptionen, setzt diese Option auf ihren voreingestellten Wert zurück; es können nur die Einstellungen zurückgesetzt werden, die keine Zeichenkette als Argument benötigen
-
,gefolgt von einer der unten beschriebenen Kommandozeilenoptionen, setzt diese Option auf das Gegenteil der Standardeinstellung; es können nur die Einstellungen verändert werden, die keine Argumente benötigen; im Anschluß an die Änderung wird die aktuelle Einstellung gezeigt
_
(Unterstrich), gefolgt von einer der unten beschriebenen Kommandozeilenoptionen, zeigt den aktuellen Wert dieser Einstellung; die Einstellung wird nicht verändert
+Lesskommando
führt das angegebene Lesskommando jedesmal automatisch aus, wenn eine neue Datei angezeigt wird
V
zeigt die Versionsnummer von less
q | :q | :Q | ZZ | ESC ESC
beendet less
v
startet einen Editor mit der aktuellen Datei; wenn in der Umgebungsvariablen EDITOR nichts anderes bestimmt ist, wird der vi als Standardeditor benutzt
! Kommandozeile
startet eine Shell und führt das angegebene externe Kommando aus; in der Kommandozeile kann der Name der aktuellen Datei mit einem Prozentzeichen `%', der Name der zuletzt davor aktuellen Datei mit dem Nummernzeichen `#' ersetzt werden; ein doppeltes Ausrufezeichen `!!' wiederholt die letzte Kommandozeile; ein einfaches Ausrufezeichen `!' startet eine interaktive Shell; in allen Fällen wird die Standardshell /bin/sh gestartet, wenn in der Umgebungsvariablen SHELL keine andere Shell bestimmt ist
| Marke Kommandozeile
leitet die Zeilen von der ersten Bildschirmzeile bis zur Marke durch das in der Kommandozeile angegebene Kommando

Optionen

Die folgenden Optionen und Einstellungen können in der Kommandozeile beim Aufruf von less gesetzt werden. Es ist außerdem möglich, die entsprechenden Einstellungen mit dem `-'-Kommando zur Laufzeit von less vorzunehmen. Zusätzlich bietet less die Möglichkeit, bestimmte Optionen, die jedesmal gesetzt werden sollen, in der Umgebungsvariablen LESS zu speichern. Die so gesetzten Optionen werden jedesmal gelesen, wenn less gestartet wird, können aber immer von Kommandozeilenoptionen verdeckt werden.

-?
zeigt eine kurze Übersicht über die Kommandos und Optionen von less
-a
die Vorwärtssuchfunktionen fangen in der letzten Bildschirmzeile an, überspringen also den aktuellen Bildschirm
-b Nr
veranlaßt less, die mit Nr angegebene Anzahl von Puffern für die Anzeige zu benutzten; jeder Puffer ist ein Kilobyte groß; wenn less aus einer Pipe liest, werden die Puffer automatisch angefordert (siehe die Option `-B')
-B
unterdrückt die automatische Anforderung neuer Puffer; es werden nur die mit der `-b' Option bereitgestellten oder die standardmäßig eingestellten zehn Puffer für die Speicherung der aus einer Pipeline gelesenen Daten benutzt; werden mehr Daten gelesen, als Pufferplatz frei ist, wird der älteste Puffer überschrieben
-c
jede neue Bildschirmseite wird von der ersten Zeile an neu aufgebaut; normalerweise wird jede neue Bildschirmseite durch Scrollen des Bildschirms angezeigt
-C
der Bildschirm wird vor jeder neuen Seite gelöscht sonst wie `-c'
-d
unterdrückt Warnungen bzw. Fehlermeldungen auf ``dummen'' Terminals, wenn bestimmte Funktionen wie Bildschirmlöschen oder Rückwärtsscrollen nicht zur Verfügung stehen
-e
less beendet automatisch, wenn das Dateiende zum zweiten mal erreicht wird; normalerweise kann less nur ausdrücklich durch ein entsprechendes Kommando verlassen werden
-E
less wird automatisch beim (ersten) Dateiende verlassen
-f
erzwingt die Anzeige, auch von Dateien mit nichtdruckbaren Zeichen
-h Nr
es werden höchstens die angegebene Anzahl Zeilen rückwäts gescrollt; sollen mehr als die angegebene Anzahl Zeilen zurückgeblättert werden, findet der Bildschirmaufbau wie beim Vorwärtsblättern von der ersten Zeile an statt
-i
Groß- und Kleinschreibung werden beim Suchen nicht unterschieden; wenn ein Buchstabe im Suchmuster groß geschrieben ist, wird diese Option ignoriert
-j Nr
die Zielzeile bei einer Suche oder einer direkten Positionierung wird an der benannten Stelle angezeigt; eine negative Zahl zählt die Zielzeile vom unteren Bildschirmrand aus (anstelle des oberen)
-k Datei
liest eine alternative Tastaturbelegung aus der benannten Datei; wenn keine Datei angegeben ist, wird die Datei `.less' im Heimatverzeichnis gelesen; eine Datei mit alternativer Tastaturbelegung kann mit dem lesskey-Kommando erzeugt werden
-m
zeigt die aktuelle Dateiposition in Bytes oder Prozent als Eingabeaufforderung nach jeder Seite; normalerweise dient der Doppelpunkt `:' als Eingabeaufforderung
-M
zeigt die aktuelle Dateiposition in Zeilen und den Dateinamen als Eingabeaufforderung
-n
die Zeilennummer wird weder in der Eingabeaufforderung, noch beim Aufruf des Editors benutzt
-N
jeder Zeile wird in der Anzeige eine Zeilennummer vorangestellt
-o Datei
kopiert die gelesene Eingabe in die benannte Datei, wenn aus einer Pipeline gelesen wird; wenn die Datei schon existiert, muß der Benutzer vor dem Überschreiben die Aktion bestätigen
-O Datei
wie `-o'; es wird aber vor dem Überschreiben einer existierenden Datei nicht nachgefragt
-p Muster
sucht sofort das erste Auftreten vom Muster in der ersten angegebenen Datei
-P Prompt
ändert die Eingabeaufforderung (Prompt); `-Pm' ändert den Prompt für die `-m' Option, und `-PM' ändert entsprechend den Prompt für die `-M' Option; die Syntax der Prompt Zeichenkette mit `man less' in den englischen Manualpages nachzulesen
-q
der Alarmton des Terminals wird nicht bei kleineren Fehlern wie z. B. das Vorwärtsblättern am Dateiende ausgelöst; wenn das Terminal eine optische Warnung unterstützt, wird diese anstelle des akustischen Alarms benutzt
-Q
der Alarmton des Terminals wird unter keinen Umständen ausgelöst
-r
die Sonderzeichen (Control Sequenzen) werden nicht als Caret-Sequenz, sondern `roh' angezeigt
-s
mehrere Leerzeilen werden zu einer einzigen Leerzeile zusammengefaßt; das ist die Standardeinstellung für die Anzeige von groff-Ausgabe
-S
überlange Zeilen werden einfach abgeschnitten; normalerweise wird der Rest überlanger Zeilen in der nächsten Zeile angezeigt
-t Tag
zeigt die Datei, in der vom ctags-Programm die Marke Tag gefunden wurde; für diese Option muß eine `tags' Datei vom ctags Programm im aktuellen Verzeichnis angelegt werden
-T Tagdatei
die benannte Tagdatei wird anstelle der Datei `tags' im aktuellen Verzechnis für die `-t' Option benutzt
-u
Rückschritt und Wagenrücklauf werden roh (unverändert) an das Terminal geschickt
-U
Rückschritt und Wagenrücklauf werden als Control-Sequenzen der Option `-r' entsprechend an das Terminal geschickt; normalerweise werden Rückschritte, die von einem Unterstrich gefolgt werden, durch einen unterstrichenen Buchstaben, Rückschritte, die von dem gleichen Buchstaben eingeleitet wie gefolgt werden, durch einen fettgedruckten Buchstaben dargestellt; alle anderen Rückschritte und die von einem Zeilenvorschub gefolgten Wagenrücklaufzeichen werden ignoriert
-w
die Bildschirmzeilen nach dem Dateiende werden durch Leerzeilen anstelle der voreingestellten Tilde `~' dargestellt
-x Nr
die Tabulatorweite wird auf die gegebene Anzahl Stellen gesetzt
-y Nr
setzt eine Grenze von Zeilen, bis zu der das Vorwärtsscrollen möglich ist; wenn mehr als die gesetzte Anzahl Zeilen vorwärts geblättert werden soll, wird der Bildschirm der `-c' oder `-C' Option entsprechend neu aufgebaut
-z Nr
ändert die Schrittweite für das Blättern auf die angegebene Zeilenzahl
+
eine Kommandozeilenoption, die mit einem Pluszeichen beginnt, wird als Initialisierungskommando für less interpretiert und als erstes Kommando von less ausgeführt; wenn anstelle eines einzelnen Pluszeichens zwei Pluszeichen benutzt werden, wird das darauffolgende Kommando bei allen Dateien der Kommandozeilenliste als erstes ausgeführt

Umgebungsvariablen

less unterstützt die folgenden Umgebungsvariablen:

COLUMNS
die Zeilenlänge für den Ausgabebildschirm
EDITOR
der Editor für das `v'-Kommando
HOME
das Heimatverzeichnis des Anwenders; hier wird die `.less' Datei gesucht
LESS
eine Zeichenkette mit Kommandozeilenoptionen
LESSBINFMT
das Format zur Anzeige binärer Zeichen, die keine Controlzeichen sind
LESSCHARDEF
legt einen Zeichensatz fest (ascii oder latin1)
LESSCHARSET
beschreibt einen anderen Zeichensatz direkt
LESSEDIT
die Kommandozeile für den Editor
LESSHELP
der absolute Name der Hilfsdatei
LINES
die Anzahl der Bildschirmzeilen
SHELL
die Shell für die externen Kommandos
TERM
die Terminalbezeichnung, wie sie in /etc/termcap zu finden ist