This must've been done before: I want to keep a log file open in terminal so I can monitor updates to it as they occur. My searches are coming up with everything but this situation... I must be missing some terminology or something key, because people do this all the time inside of other programs (NetBeans, or rails server, for example).
3 Answers
Try with:
tail -f your.log
where -f
stands for follow.
-
As you may need syntax highlight,
multitail
is handy i.e. multitail -f your.log ref. unix.stackexchange.com/a/8419/17671– Nam G VUSep 22, 2016 at 4:45 -
Or even better is
grc
i.e. grc tail -f your.log ref. unix.stackexchange.com/a/21962/17671– Nam G VUSep 22, 2016 at 4:48
Another way:
watch tail -n20 your.log
OK, kind of a silly use of watch
- but you might find the watch
command useful for other things.
-
5The
watch
option is better for files that are going to be renamed/removed and recreated (either by normal operation or by something like logrotate) during the time you are watching, otherwisetail -f
is more efficient. May 20, 2011 at 20:07 -
6
-
An alternative to @cYrus's answer is:
less +F file.log
The benefit is that less
can also truncate long lines for you with the -S
flag, preventing them from wrapping around the terminal screen while allowing you to scroll left/right. Instead of piping tail -f file.log
through cut
or something similar, you can just:
less -S +F file.log
tail -f myfile.log
. That does it nicely. I love linux.