Linux - jakiś sposób na utrzymanie otwartego pliku dziennika aktualizacji na żywo w terminalu?


47

To musiało być zrobione wcześniej: chcę, aby plik dziennika był otwarty w terminalu, aby móc monitorować aktualizacje w miarę ich pojawiania się. Moje poszukiwania wymyślają wszystko oprócz tej sytuacji ... Muszę brakować jakiejś terminologii lub czegoś kluczowego, ponieważ ludzie robią to cały czas w innych programach (na przykład NetBeans lub serwer Railsowy).


4
Ach, znalazłem to. tail -f myfile.log. To ładnie. Kocham Linux.
wulftone

Odpowiedzi:



10

Inny sposób:

oglądaj tail -n20 twój.log

OK, rodzaj głupiego użycia watch- ale może się okazać, że watchpolecenie jest przydatne do innych celów.


5
Ta watchopcja jest lepsza w przypadku plików, których nazwy zostaną zmienione / usunięte i ponownie utworzone (podczas normalnej pracy lub przez coś takiego jak logrotate) podczas oglądania, w przeciwnym razie tail -fjest bardziej wydajne.
David Spillett,

6
@David: tail -Fradzi sobie z tym.
grawitacja

@grawity: Dzięki, codziennie uczysz się czegoś nowego!
David Spillett

3

Alternatywą dla odpowiedzi @ cYrus jest:

less +F file.log

Zaletą jest to, że lessmożna również przyciąć długie linie za pomocą -Sflagi, zapobiegając owijaniu się wokół ekranu terminala, jednocześnie umożliwiając przewijanie w lewo / w prawo. Zamiast rurociągów tail -f file.logprzez cutlub coś podobnego, można po prostu:

less -S +F file.log
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.