Ich möchte eine tail -f
Art von Verhalten, das die gesamte Datei liest und sie dann weiter verfolgt, während sie geschrieben wird.
LÖSUNG
Basierend auf der von mir akzeptierten Antwort funktioniert Folgendes: tail -f -n +1 {filename}
Warum es funktioniert: Die -f
Option "folgt" weiterhin der Datei und gibt neue Zeilen aus, wenn diese in die Datei geschrieben werden. Der -n +1
Befehl tail
zum Lesen der Datei beginnt in der ersten Zeile. Die Verwendung -n -10
würde mit den letzten zehn Zeilen der Datei beginnen.
tail -f -n 10000000000000000000
wohl alle Zeilen zeigen, oder? (vielleicht ist die 100000000000000000 ein bisschen viel: =))more fileName
würde genau das tuntail -f -n 100...
muss die Datei vorab gelesen werden, um die Anzahl der Zeilen zu bestimmen, es sei denn, es ist klug genug, eine Obergrenze für die Zeilenanzahl basierend auf der Dateigröße zu ermitteln.Antworten:
Verwenden
Wenn
man tail
Sie verwenden, erhalten Sie weitere Informationen. Der entsprechende Auszug folgt.quelle
man tail
(und lesen), wie in der Antwort angegeben, oder eine Online-Suche nach "tail manpage" durchführen und eine davon lesen.tail
Beginnt an einer Position in einer Datei, liest (und zeigt) bis zum Ende und überwacht dann die Dateigröße. Wenn die Dateigröße zunimmt,tail
wird von der vorherigen EOF-Position bis zum neuen Dateiende gelesen und angezeigt.tail -50 {filename}
vorher verwendet, aber hatte keinen Erfolg, die zwei zu kombinieren.Versuche dies:
Wo
{filename}
ist die Datei, die Sie im Auge behalten möchten? Dadurch wird der Befehl kontinuierlich auf Änderungen überwacht und die Änderungen an stdout ausgegeben. Es ist ziemlich praktisch.quelle
watch tail -n +1 {filename}
watch
ist wirklich ein nützliches Werkzeug, aber um zu beobachten, wie sich die Ausgabe eines Befehls ändert, aber um das Ende einer angehängten Datei zu beobachten, ist es viel besser, es zu verwendentail -f
. ---watch tail {filename}
wird alle zwei Sekunden das Ende der Datei erneut öffnen und lesen. Auf der anderen Seite wirdtail -f
auf das Wachstum der Datei geachtet und wenn sie erkannt wird, wird sofort nur der angehängte Teil gelesen.tailf -f
ist viel effizienter und die Reaktion ist viel schneller. Außerdem wird der Dateiinhalt von dem Punkt an, an dem Sie begonnen haben, fortlaufend angezeigt. ---watch
überschreibt seine Ausgabe alle zwei Sekunden.