On Linux systems I can

watch -n1 tail /var/log/whatever.log


watch -n1 grep somestuff /var/log/whatever.log

To show updates to a log every 1 seconds. On FreeBSD however, the watch command does something else entirely. Who knows a good FreeBSD command for what I'm trying to do? =)


How about this: $ tail -f logfile?

And if you need to grep: $ tail -f logfile | grep foobar.

  • On linux you generally have "tailf" which has the advantage of "not accessing the file when it is not growing". – Shadok Mar 4 '11 at 17:44
Port:   gnu-watch-3.2.8
Path:   /usr/ports/misc/gnu-watch
Info:   GNU watch command
Maint:  ehaupt[ woof-woof ]FreeBSD.org
WWW:    http://procps.sourceforge.net/
  • Linux: watch -n 5 tail /var/logfile
  • Freebsd: cmdwatch -n 5 /var/logfile
  • Openbsd: gnuwatch -n 5 /var/logfile

(Install from Ports for the BSDs)


You could write a quick shell loop:

while sleep 1; do clear; grep somestuff /var/log/whatever.log | head -n 18; done


If I define your "what I'm trying to do" as "watch changes to a log file", I would suggest rather than using watch that you could just use the "-f" (for "follow") or "-F" option on the tail command, as in tail -f /var/log/whatever.log. The output can also be piped through grep to give you the filtered version you show there. I believe this is also likely to be more efficient than "watch".

Edit: I thought the "follow" option wasn't available on BSD but it appears it is. Must have been thinking of something else that's not there...


You can use this script for all things that you want to do with watch command.

while [ true ]
echo ------------------------------------
eval "$@"
sleep 2

Usage:sh scriptname.sh example:sh scriptname.sh ls -l

  • 2
    You are missing " around $@ and eval is not needed. [ 1 -lt 2 ] could be replaced with true. Your script would be a lot more readable if you used some indentation. – kasperd Oct 14 '15 at 6:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.