linux查看日志的几个方法

来源:互联网 发布:批量查询域名 编辑:程序博客网 时间:2024/06/02 03:14

tail作用

用来查看文件的内容,如果值前面没有 +(加号)或 -(减号),那么从文件末尾指定的单元号开始读取文件。

tail参数

  • -f 不停的去读最新的内容
  • -n 从首行或末行位置来读取指定文件,位置由 Number 变量的符号(+ 或 - 或无)表示,并通过行号 Number 进行位移。
  • -r 从文件末尾以逆序方式显示输出,只有与 -n 标志一起时才有效。否则,就会将其忽略
  • -k Number 从 Number 变量表示的1KB 块位置开始读取指定文件

head作用

head命令和tail命令就像他的名字一样浅显易懂,它是用来显示开头或者结尾某个数量的文字区块,head用来显示档案的开头至标准输出当中

head参数

  • -q 隐藏文件名
  • -v 显示文件名
  • -c 显示字节数
  • -n 显示的行数

sed作用

本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换、删除、新增、选取等特定工作

sed参数

  • -n∶使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN的资料一般都会被列出到萤幕上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。
    • -p ∶列印,亦即将某个选择的资料印出。通常 p 会与参数 sed -n 一起运作~
    • -s ∶取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦!

cat作用

cat主要有三大功能:
1. 一次显示整个文件。catfilename2. cat > filename 只能创建新文件,不能编辑已有文件.
3. 将几个文件合并为一个文件: $cat file1 file2 > file

cat参数

  • -n 或 –number 由 1 开始对所有输出的行数编号
  • -b 或 –number-nonblank 和 -n 相似,只不过对于空白行不编号
  • -s 或 –squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
  • -v 或 –show-nonprinting
  • -E, –show-ends 在每行结束处显示 $
  • -e 等价于-vE

grep 作用

是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本

grep参数

  • -n:显示匹配行及 行号
  • -h:查询多文件时不显示文件名
  • -A: 显示匹配行及前面多少行, 如: -A3, 则表示显示匹配行及前3行
  • -B: 显示匹配行及后面多少行, 如: -B3, 则表示显示匹配行及后3行
  • -C: 显示匹配行前后多少行, 如: -C3, 则表示显示批量行前后3行

应用

cat -n test.log |grep “地形” | more 得到关键日志的行号

cat -n test.log |tail -n +92|head -n 20
tail -n +92表示查询92行之后的日志
head -n 20 则表示在前面的查询结果里再查前20条记录

cat -n test.log |grep “地形” >xxx.txt

grep ‘2014-12-17 16:17:20’ test.log

sed -n ‘/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p’ test.log

原创粉丝点击