---
author: ruchi
category: 分享
comments_data:
- date: '2015-12-03 10:03:17'
  message: 好东西，试试看。
  postip: 14.113.43.245
  username: 古日亚瑟 [Firefox 42.0|Ubuntu]
- date: '2017-04-14 12:00:39'
  message: '@有道云笔记'
  postip: 113.200.214.102
  username: 五花大绑编狼 [Firefox 51.0|Windows 7]
count:
  commentnum: 2
  favtimes: 4
  likes: 0
  sharetimes: 0
  viewnum: 8414
date: '2015-12-02 23:17:49'
editorchoice: false
excerpt: 日志文件导航器（Logfile Navigator，简称 lnav），是一个基于 curses 的，用于查看和分析日志文件的工具。和文本阅读器/编辑器相比，
  lnav 的好处是它充分利用了可以从日志文件中获取的语义信息，例如时间戳和日志等级。利用这些额外的语义信息， lnav 可以处理像这样的事情：来自不同文件的交错的信息；按照时间生成信息直方图；支持在文件中导航的快捷键。它希望使用这些功能可以使得用户可以快速有效地定位和解决问题。
  lnav 功能 支持以下日志文件格式： Syslog、Apache 访问日志、strace、tcsh 历史以及常见的带时间戳的日志文件。
fromurl: http://www.ubuntugeek.com/lnav-ncurses-based-log-file-viewer.html
id: 6677
islctt: true
largepic: /images/p/201512/02/231752xz4aklpb0fisxhss.png
permalink: /article-6677-1.html
pic: /images/p/201512/02/231752xz4aklpb0fisxhss.png.thumb.jpg
related: []
reviewer: ''
selector: ''
summary: 日志文件导航器（Logfile Navigator，简称 lnav），是一个基于 curses 的，用于查看和分析日志文件的工具。和文本阅读器/编辑器相比，
  lnav 的好处是它充分利用了可以从日志文件中获取的语义信息，例如时间戳和日志等级。利用这些额外的语义信息， lnav 可以处理像这样的事情：来自不同文件的交错的信息；按照时间生成信息直方图；支持在文件中导航的快捷键。它希望使用这些功能可以使得用户可以快速有效地定位和解决问题。
  lnav 功能 支持以下日志文件格式： Syslog、Apache 访问日志、strace、tcsh 历史以及常见的带时间戳的日志文件。
tags:
- 日志
- lnav
thumb: false
title: LNAV：基于 Ncurses 的日志文件阅读器
titlepic: false
translator: ictlyh
updated: '2015-12-02 23:17:49'
---

日志文件导航器（Logfile Navigator，简称 lnav），是一个基于 curses 的，用于查看和分析日志文件的工具。和文本阅读器/编辑器相比， lnav 的好处是它充分利用了可以从日志文件中获取的语义信息，例如时间戳和日志等级。利用这些额外的语义信息， lnav 可以处理像这样的事情：来自不同文件的交错的信息；按照时间生成信息直方图；支持在文件中导航的快捷键。它希望使用这些功能可以使得用户可以快速有效地定位和解决问题。


### lnav 功能


#### 支持以下日志文件格式：


Syslog、Apache 访问日志、strace、tcsh 历史以及常见的带时间戳的日志文件。读入文件的时候回自动检测文件格式。


#### 直方图视图：


以时间区划来显示日志信息数量。这对于大概了解在一长段时间内发生了什么非常有用。


#### 过滤器：


只显示那些匹配或不匹配一些正则表达式的行。对于移除大量你不感兴趣的日志行非常有用。


#### 即时操作：


在你输入到时候会同时完成检索；当添加了新日志行的时候会自动加载和搜索；加载行的时候会应用过滤器；另外，还会在你输入 SQL 查询的时候检查其正确性。


#### 自动显示后文：


日志文件视图会自动往下滚动到新添加到文件中的行。只需要向上滚动就可以锁定当前视图，然后向下滚动到底部恢复显示后文。


#### 按照日期顺序排序行：


从所有文件中加载的日志行会按照日期进行排序。使得你不需要手动从不同文件中收集日志信息。


#### 语法高亮：


错误和警告会用红色和黄色显示。高亮还可用于： SQL 关键字、XML 标签、Java 文件行号和括起来的字符串。


#### 导航：


有快捷键用于跳转到下一个或上一个错误或警告，按照指定的时间向后或向前翻页。


#### 用 SQL 查询日志：


每个日志文件行都相当于数据库中的一行，可以使用 SQL 进行查询。可以使用的列取决于查看的日志文件类型。


#### 命令和搜索历史：


会自动保存你之前输入的命令和搜素，因此你可以在会话之间使用它们。


#### 　压缩文件：


会实时自动检测和解压压缩的日志文件。


### 在 ubuntu 15.10 上安装 lnav


打开终端运行下面的命令



```
sudo apt-get install lnav

```

### 使用 lnav


如果你想使用 lnav 查看日志，你可以使用下面的命令，默认它会显示 syslogs



```
lnav

```

![](/images/p/201512/02/231752xz4aklpb0fisxhss.png)


如果你想查看特定的日志，那么需要指定路径。如果你想看 CPU 日志，在你的终端里运行下面的命令



```
lnav /var/log/cups

```

![](/images/p/201512/02/231753f33vmrlrwln5e3vg.png)




---


via: <http://www.ubuntugeek.com/lnav-ncurses-based-log-file-viewer.html>


作者：[ruchi](http://www.ubuntugeek.com/author/ubuntufix) 译者：[ictlyh](http://mutouxiaogui.cn/blog/) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出