tail(1) tail(1)
NAME
tail - Den letzten Teil einer Datei ausgeben
SYNTAX
tail [-f] {-c zahl | -n zahl} [--] [datei] Format 1
tail [stelle[bcl[rf]]] [datei] Format 2
BESCHREIBUNG
tail gibt den Inhalt der angegebenen Datei ab einer festgelegten
Stelle auf die Standardausgabe aus. Wenn Sie beim Aufruf von tail
keine Datei angeben, wird der Inhalt der Standardeingabe ab einer
festgelegten Stelle auf die Standardausgabe ausgegeben.
Abschnitte, die vom Dateiende aus gezählt werden, sind in einem inter-
nen Puffer zwischengespeichert und daher im Umfang eingeschränkt.
Solch ein Speicher ist mindestens LINEMAX*10 Byte groß [siehe
limits(4)].
Wird tail auf zeichenorientierte Gerätedateien angewendet, so kann es
zu Problemen kommen.
OPTIONEN
Format 1: Neue Syntax von tail
-c zahl
Legt die Stelle der Eingabedatei in Byte fest, an der die Ausgabe
beginnt. zahl können Sie mit oder ohne Vorzeichen angeben:
+ Es wird vom Dateianfang aus gezählt.
- Es wird vom Dateiende aus gezählt.
kein Vorzeichen
Es wird vom Dateiende aus gezählt.
-c darf nicht zusammen mit -n angegeben werden.
Weder -c noch -n angegeben:
Die letzten 10 Zeilen von datei werden ausgegeben (entspricht -n
10).
-f (f - follow) Wenn die Eingabedatei eine Datei oder eine FIFO ist,
dann beendet sich das Programm nach der Ausgabe nicht, sondern
tritt in eine Endlosschleife ein. Es schläft jeweils mindestens
eine Sekunde lang und versucht, dann weitere Datensätze der Ein-
gabedatei zu lesen und auszugeben. Auf diese Weise können Sie
z. B. das Wachstum einer Datei überwachen, in die von einem ande-
ren Prozeß geschrieben wird. Ist die Eingabedatei eine Pipe, wird
-f ignoriert.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
tail(1) tail(1)
-n zahl
Legt die Stelle der Eingabedatei in Zeilen fest, an der die Aus-
gabe beginnt. zahl können Sie mit oder ohne Vorzeichen angeben
(siehe -c).
-n darf nicht zusammen mit -c angegeben werden.
Weder -n noch -c angegeben: Die letzten 10 Zeilen von datei wer-
den ausgegeben (entspricht -n 10).
-n zahl entspricht der alten Option -zahl, wenn zahl ohne Vorzei-
chen oder negativ (mit Minuszeichen) angegeben wird, und der
alten Option +zahl, wenn zahl positiv (mit Pluszeichen) angegeben
wird.
-- Ende der Optionenliste. Die Angabe ist nötig, wenn datei mit -
beginnt.
datei
Name der Eingabedatei, die tail ausgeben soll.
datei nicht angegeben: tail liest von der Standardeingabe.
Format 2: Alte Syntax von tail
stelle
Mit stelle legen Sie die Stelle in der Eingabedatei fest, an der
die Ausgabe beginnt. Sie können angeben:
+[zahl]
-[zahl]
Für zahl geben Sie eine ganze Dezimalzahl an. Wenn Sie
+[zahl] angeben, wird vom Dateianfang aus gezählt. Wenn Sie
-[zahl] angeben, wird vom Dateiende aus gezählt.
zahl nicht angegeben:
Standardwert ist 10.
stelle nicht angegeben:
Standardwert ist -10, d. h. 10 Einheiten vom Dateiende aus
gezählt.
b (b - block) Die Ausgabe von tail beginnt an dem durch stelle
festgelegten Block. Ein Block ist eine Einheit von 512 Byte.
c (c - character) Die Ausgabe von tail beginnt an dem durch stelle
festgelegten Zeichen. (Entspricht der Option -c in der neuen Syn-
tax.)
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
tail(1) tail(1)
l (l - line) Die Ausgabe von tail beginnt an der durch stelle fest-
gelegten Zeile. (Entspricht der Option -n in der neuen Syntax.)
Sie dürfen nur eine der Optionen b, c oder l angeben. Wenn Sie keine
dieser drei Optionen angeben, ist standardmäßig l gesetzt.
f (f - follow) Wenn die Eingabedatei eine Datei oder eine FIFO ist,
dann beendet sich das Programm nach der Ausgabe nicht, sondern
tritt in eine Endlosschleife ein. Es schläft jeweils mindestens
eine Sekunde lang und versucht, dann weitere Datensätze der Ein-
gabedatei zu lesen und auszugeben. Auf diese Weise können Sie
z. B. das Wachstum einer Datei überwachen, in die von einem ande-
ren Prozeß geschrieben wird. Ist die Eingabedatei eine Pipe, wird
f ignoriert. (Entspricht der Option -f in der neuen Syntax.)
r (r - reverse) Die Zeilen der Datei werden in umgekehrter Reihen-
folge ausgegeben, beginnend am angegebenen Startpunkt. Als Vor-
einstellung bei r werden alle Zeilen der Datei in umgekehrter
Reihenfolge ausgegeben.
Wird die Option r zusammen mit einem Zahlenwert [zahl] verwendet,
so darf nur ein negativer Zahlenwert verwendet werden. Das heißt,
+ darf in diesem Fall nicht mit [zahl] kombiniert werden.
Sie dürfen die Optionen f und r nicht zusammen verwenden.
datei
Name der Eingabedatei, die tail ausgeben soll.
datei nicht angegeben: tail liest von der Standardeingabe.
INTERNATIONALE UMGEBUNG
Die Umgebungsvariable LCMESSAGES bestimmt die Sprache der Meldungs-
texte. Wenn LCMESSAGES nicht oder als leere Zeichenkette definiert
ist, wird der Wert von LANG als Standardwert herangezogen. Ist auch
LANG nicht oder als leere Zeichenkette definiert, verhält sich das
System so, als wäre es nicht internationalisiert.
Die Umgebungsvariable LCALL bestimmt die gesamte internationale Umge-
bung. LCALL hat Vorrang vor allen anderen Umgebungsvariablen im
Bereich der Internationalisierung.
BEISPIELE
Beispiel 1
In der Datei monate steht jeweils in einer Zeile ein Monatsname. Die
beiden tail-Aufrufe
$ tail -n 5 monate
$ tail -n +8 monate
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98
tail(1) tail(1)
haben die gleiche Ausgabe zur Folge:
August
September
Oktober
November
Dezember
Beispiel 2
Um die Wirkung der Option -f zu verdeutlichen, können Sie z. B. eine
Shell-Prozedur im Hintergrund ablaufen lassen, die in einer Endlos-
schleife in eine Datei schreibt.
Die Shell-Prozedur steht in der Datei unendlich und hat folgenden
Inhalt:
while true
do {
date >>anna
sleep 5
}
done
Sie lassen nun diese Prozedur im Hintergrund ablaufen und rufen dann
tail mit der Option -f auf die Datei anna angewendet auf:
$ unendlich &
656
$ tail -f -n 5 anna
Diese fuenf
Zeilen
standen vorher
schon in
der Datei
FRI MAR 22 11:40:35 MET 1991
FRI MAR 22 11:40:40 MET 1991
.
.
.
tail gibt zunächst die letzten fünf Zeilen der Datei anna aus und dann
das, was die Prozedur unendlich in diese Datei schreibt. Sie können
den Prozeß, der durch den Aufruf tail -f erzeugt wurde mit der Taste
CTRL-C abbrechen.
SIEHE AUCH
cat(1), head(1), more(1), pg(1), limits(4).
Seite 4 Reliant UNIX 5.44 Gedruckt 11/98