The -d or --differences flag will highlight the differences between successive updates. Using --differences=cumulative makes highlighting "sticky", presenting a running display of all positions that have ever changed. The -t or --no-title option turns off the header showing the interval, command, and current time at the top of the display, as well as the following blank line. The -b or --beep option causes the command to beep if it has a non-zero exit.
watch will normally run until interrupted. If you want watch to exit on an error from the program running use the -e or --errexit options, which will cause watch to exit if the return value from the program is non-zero.
By default watch will normally not pass escape characters, however if you use the --c or --color option, then watch will interpret ANSI color sequences for the foreground.
Note that POSIX option processing is used (i.e., option processing stops at the first non-option argument). This means that flags after command don't get interpreted by watch itself.
To watch for mail, you might do
To watch the contents of a directory change, you could use
If you're only interested in files owned by user joe, you might use
To see the effects of quoting, try these out
To see the effect of precision time keeping, try adding -p to
You can watch for your administrator to install the latest kernel with
(Note that -p isn't guaranteed to work across reboots, especially in the face of ntpdate or other bootup time-changing mechanisms)
Non-printing characters are stripped from program output. Use "cat -v" as part of the command pipeline if you want to see them.
Combining Characters that are supposed to display on the character at the last column on the screen may display one column early, or they may not display at all.
Combining Characters never count as different in --differences mode. Only the base character counts.
Blank lines directly after a line which ends in the last column do not display.
--precise mode doesn't yet have advanced temporal distortion technology to compensate for a command that takes more than interval seconds to execute. watch also can get into a state where it rapid-fires as many executions of command as it can to catch up from a previous executions running longer than interval (for example, netstat taking ages on a DNS lookup).