动态查看Linux中的日志文件

时间:2010-01-20 05:02:09

标签: linux logging

我在Linux中有一个.csv格式的日志文件,它正在不断更新。 我想查看日志文件,因为它正在更新。是否有任何Linux命令可以做到这一点?

8 个答案:

答案 0 :(得分:105)

tail -f yourlog.csv

新添加的行将连续显示。

答案 1 :(得分:70)

正如其他人所指出的,tail -f file是最常见的解决方案。问题是结果只是滚动,你不能回去搜索它们,除非你的终端支持它并且你的终端有足够的线路缓冲。

我喜欢的一个鲜为人知的解决方案是使用less;如果在查看带有less的文件时键入 Shift - F ,它将从文件末尾开始,就像tail -f一样。或者,您可以使用less启动less +F以在启动时进入此模式。您可以随时键入 Ctrl - C 以停止关注该文件,然后向上和向下翻页,使用 / 进行搜索,并使用less就像平常一样。如果您在日志中看到一些有趣的内容,但它会在屏幕上滚动,或者如果您想稍微检查一下您可能错过的内容,这可能会非常有用。完成搜索后,再次按 Shift - F 开始再次关注该文件。

multitail看起来像是在单独的窗口中跟踪多个文件的好方法;如果您使用tail -f查看多个文件,它们将彼此交错(使用标题来区分它们),这可能不是您想要观看它们的方式。

tail -F(即大写-F,而不是小写-f)是非标准标志(可在Linux,Cygwin,MacOS X,FreeBSD和NetBSD上使用),更适合观看日志文件,偶尔可以轮换;一个进程重命名日志文件,然后在其位置创建一个新的日志文件,这是常见的,以避免任何一个日志文件变得太大。 tail -f将继续关注旧文件,该文件不再是活动日志文件,而tail -F将监视正在创建的新文件,并开始关注该文件。如果您使用less来关注该文件,则可以使用--follow-name标记使less以这种方式行事。

(感谢ephemient提供有关less +Fless --follow-name

的提示

答案 2 :(得分:12)

tail -f foo.csv

答案 3 :(得分:10)

为了防止您想要监控多个文件,有一个名为multitail的好工具可以让您合并两个或多个文件的输出并实时跟踪它们。 multitail还允许您在受监视的文件中来回导航。

答案 4 :(得分:7)

tail -f及其所有朋友都是老上学。 multitail看起来更好,但真实的方式来刻录CPU查看日志文件是使用glTail

答案 5 :(得分:2)

less -S '-#' 4 /var/log/logfile

-S将停止恼人的换行。

-# 4会将水平滚动步骤设置为四列,而不是屏幕的一半默认值。

按结束键进行刷新。

答案 6 :(得分:0)

tail -lf logfile.csv。

如果您登录GUI,则可以使用鼠标垫动态查看日志。

答案 7 :(得分:0)

如果您希望通过Web应用程序监视日志,则

vsConsole FileView可能会有所帮助。 请参阅http://demo.vamonossoftware.com/

上的演示

需要你运行一个java app服务器,向它部署vsConsole,并在包含日志的服务器上运行代理 - 所以我猜它是一个比你需要的更重的解决方案。 (它非常适合开发/测试团队,他们只想点击日志文件来查看它而不是ssh,cd,tail等)