Cory J Asked: 2010-04-15 13:27:42 +0800 CST2010-04-15 13:27:42 +0800 CST 2010-04-15 13:27:42 +0800 CST 在 FreeBSD 与 Linux 上“观看”日志 772 在 Linux 系统上我可以 watch -n1 tail /var/log/whatever.log 或者 watch -n1 grep somestuff /var/log/whatever.log 每 1 秒显示一次日志更新。然而,在 FreeBSD 上,watch命令完全是做别的事情。谁知道我正在尝试做的一个好的 FreeBSD 命令?=) linux logging freebsd grep tail 6 个回答 Voted Best Answer EEAA 2010-04-15T13:31:52+08:002010-04-15T13:31:52+08:00 这个怎么样:$ tail -f logfile? 如果你需要 grep: $ tail -f logfile | grep foobar。 SaveTheRbtz 2010-04-21T03:55:25+08:002010-04-21T03:55:25+08:00 Port: gnu-watch-3.2.8 Path: /usr/ports/misc/gnu-watch Info: GNU watch command Maint: ehaupt[ woof-woof ]FreeBSD.org B-deps: R-deps: WWW: http://procps.sourceforge.net/ hc42 2016-02-13T00:30:28+08:002016-02-13T00:30:28+08:00 Linux:watch -n 5 tail /var/logfile 免费的:cmdwatch -n 5 /var/logfile 打开bsd:gnuwatch -n 5 /var/logfile (从 BSD 的端口安装) fredden 2010-04-15T13:31:33+08:002010-04-15T13:31:33+08:00 您可以编写一个快速的 shell 循环: while sleep 1; do clear; grep somestuff /var/log/whatever.log | head -n 18; done Peter Hansen 2010-04-15T13:32:19+08:002010-04-15T13:32:19+08:00 如果我将您的“我正在尝试做的事情”定义为“监视对日志文件的更改”,我建议watch您不要使用它,而是使用“-f”(用于“跟随”)或“-F”命令上的选项tail,如tail -f /var/log/whatever.log. 输出也可以通过 grep 传递给你在那里显示的过滤版本。我相信这也可能比“观看”更有效。 编辑:我认为“关注”选项在 BSD 上不可用,但它似乎是。一定是在想别的不存在的东西…… HosseinGBI 2015-10-14T22:28:39+08:002015-10-14T22:28:39+08:00 您可以将此脚本用于您想要使用 watch 命令执行的所有操作。 #!/usr/local/bin/bash while [ true ] do clear date echo ------------------------------------ eval "$@" sleep 2 done 用法:sh scriptname.sh 示例:sh scriptname.sh ls -l
这个怎么样:
$ tail -f logfile
?如果你需要 grep:
$ tail -f logfile | grep foobar
。watch -n 5 tail /var/logfile
cmdwatch -n 5 /var/logfile
gnuwatch -n 5 /var/logfile
(从 BSD 的端口安装)
您可以编写一个快速的 shell 循环:
while sleep 1; do clear; grep somestuff /var/log/whatever.log | head -n 18; done
如果我将您的“我正在尝试做的事情”定义为“监视对日志文件的更改”,我建议
watch
您不要使用它,而是使用“-f”(用于“跟随”)或“-F”命令上的选项tail
,如tail -f /var/log/whatever.log
. 输出也可以通过 grep 传递给你在那里显示的过滤版本。我相信这也可能比“观看”更有效。编辑:我认为“关注”选项在 BSD 上不可用,但它似乎是。一定是在想别的不存在的东西……
您可以将此脚本用于您想要使用 watch 命令执行的所有操作。
用法:sh scriptname.sh 示例:sh scriptname.sh ls -l