linux查看日志的三种命令有:1、grep命令;2、tail命令;3、more命令。grep命令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。
1、grep命令
grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。主要功能是在文件中查找/过滤所需要的内容。
命令格式:
grep [option] pattern file
主要参数:
- -c 只输出匹配行的计数。
- -I 不区分大 小写(只适用于单字符)。
- -h 查询多文件时不显示文件名。
- -l 查询多文件时只输出包含匹配字符的文件名。
- -n 显示匹配行及 行号。
- -s 不显示不存在或无匹配文本的错误信息。
- -v 显示不包含匹配文本的所有行。
实例:
grep -E ‘123|abc’ filename // 找出文件(filename)中包含123或者包含abc的行
grep "^abc" //过滤以“abc”开头的行
grep -v "abc" //过滤不包含"abc"的行
grep "adb" | tail -n 2 //过滤包含"abc"的行并查看最后两行
2、tail命令
tail 命令可用于查看文件的内容,是linux中一个很实用的应用命令,该命令可以显示一个或多个文件或管道数据的最后一部分。tail命令最常见的用途之一是监视和分析随时间变化的日志和其他文件,有一个常用的参数 -f 常用于查阅正在改变的日志文件。
命令格式:
tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ]
主要参数:
- -f 循环读取
- -q 不显示处理信息
- -v 显示详细的处理信息
- -c Number 从 Number 字节位置读取指定文件
- -n Number 从 Number 行位置读取指定文件
- -m Number 从 Number 多字节字符位置读取指定文件,比方你的文件假设包括中文字,假设指定-c参数,可能导致截断,但使用-m则会避免该问题
- -b Number 从 Number 表示的512字节块位置读取指定文件。
- -k Number 从 Number 表示的1KB块位置读取指定文件。
实例:
tail -n 10 test.log //查询日志尾部最后10行的日志
tail -n +10 test.log //查询10行之后的所有日志
tail -fn 1000 test.log //循环实时查看最后1000行记录
3、more命令
more命令是一个基于vi编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容,支持vi中的关键字定位操作。more名单中内置了若干快捷键,常用的有H(获得帮助信息),Enter(向下翻滚一行),空格(向下滚动一屏),Q(退出命令)。more命令从前向后读取文件,因此在启动时就加载整个文件。
命令格式:
more filename
主要参数:
- -num 一次显示的行数
- -d 提示使用者,在画面下方显示 [Press space to continue, ‘q’ to quit.]
- -l 取消遇见特殊字元 ^L 时会暂停的功能
- -f 计算行数时,以实际上的行数,而非自动换行过后的行数
- -p 不以卷动的方式显示每一页,而是先清除萤幕后再显示内容
- -c 跟 -p 相似,不同的是先显示内容再清除其他旧资料
- -s 当遇到有连续两行以上的空白行,就代换为一行的空白行
- -u 不显示下引号 (根据环境变数 TERM 指定的 terminal 而有所不同)
实例:
more -s test.log //逐页显示日志,如有连续两行以上空白行则以一行空白行显示
more 20 test.log //从第 20 行开始显示日志内容
延伸阅读
linux系统日志文件的详细介绍
- 日志文件的作用:日志文件用于记录linux系统的各种运行信息的文件,相当于linux主机的日记,不同的日志文件记载了不同类型的信息,如Linux内核消息、用户登录事件、程序错误等。
- 日志文件的分类:内核及系统日志;用户日志;程序旧志。其中用户日志用于记录Linux系统用户登录及退出系统的相关信息,包括用户名、登录的终端、登录时间、来源主机、正在使用的进程操作等。
- 日志文件的位置:Linux系统本身和大部分服务器程序的日志文件默认放在/var/log/下。 部分程序共用一个日志文件,一部分程序使用单个日志文件。有一部分日志文件只有root用户才有权限读取。
- 日志文件分析:内核及多数系统消息内核及系统日志主要由默认安装的rsyslog软件包提供、rsyslog服务所使用的配置文件为/etc/rsyslog.conf ,通过查看配置文件内容可以了解到系统默认的日志位置。
文章标题:linux查看日志的三种命令,发布者:Z, ZLW,转载请注明出处:https://worktile.com/kb/p/47225