Sie beschreiben das GNU- tail
Dienstprogramm. Der Unterschied zwischen diesen beiden Flags besteht darin, dass ich, wenn ich eine Datei öffne, beispielsweise eine Protokolldatei wie die folgende:
$ tail -f /var/log/messages
... und wenn die Protokollrotationsfunktion auf meinem Computer beschließt, diese Protokolldatei zu rotieren, während Nachrichten darauf geschrieben werden ("rotieren" bedeutet Löschen oder Verschieben an einen anderen Ort usw.), wird die angezeigte Ausgabe nur angezeigt halt.
Wenn ich die Datei so öffne tail
:
$ tail -F /var/log/messages
... und wieder wird die Datei gedreht, die Ausgabe würde weiterhin in meiner Konsole fließen, da tail
die Datei erneut geöffnet wird, sobald sie wieder verfügbar ist, dh wenn das oder die Programme, die in das Protokoll schreiben, mit dem Schreiben in das neue beginnen /var/log/messages
.
Auf den freien BSD-Systemen gibt es keine -F
Option, aber tail -f
sie verhalten sich wie tail -F
auf GNU-Systemen, mit dem Unterschied, dass Sie die Nachricht erhalten
tail: file has been replaced, reopening.
in der Ausgabe, wenn die von Ihnen überwachte Datei verschwindet und erneut angezeigt wird.
DAS KÖNNEN SIE TESTEN
Tun Sie dies in einer Shell-Sitzung
$ cat >myfile
Das wird nun darauf warten, dass Sie etwas eingeben. Mach einfach weiter und tippe ein paar Zeilen Kauderwelsch. Es wird alles in der Datei gespeichert myfile
.
In einer anderen Shell-Sitzung (möglicherweise in einem anderen Terminal, ohne das zu unterbrechencat
):
$ tail -f myfile
Dies zeigt den (Ende des) Inhalts myfile
in der Konsole an. Wenn Sie zur ersten Shell-Sitzung zurückkehren und etwas mehr eingeben, wird diese Ausgabe sofort tail
in der zweiten Shell-Sitzung angezeigt .
Beenden cat
Sie nun Ctrl+Dmit und entfernen Sie die myfile
Datei:
$ rm myfile
Führen Sie dann die Katze erneut aus:
$ cat >myfile
... und etwas eintippen, ein paar Zeilen.
Mit GNU tail
, werden diese Linien nicht zeigen in der zweiten Shell - Sitzung auf (wo tail -f
noch läuft).
Wiederholen Sie die Übung mit tail -F
und beobachten Sie den Unterschied.