常用查看日志的linux命令

目前在测试环境或生产环境用的比较多的查日志方式:

1.搜索某个文件里面是否包含字符串

命令格式:grep "被查找的字符串" filename

例如:一般会都使用traceId线程号来追踪

grep "23e5434fr884d53f9" /applogs/rtlog/app/service/service.log

2.在多个文件中检索某个字符串

命令格式:

  1. grep "被查找的字符串t" filename1 filename2 filename3 ...
  2. grep "被查找的字符串" *.log

3.搜索某个字符的前后几行的行数:

命令格式:

  1. grep –C 10 "被查找的字符串" 文件名           匹配字符串的前后10行
  2. grep –A 10 "被查找的字符串" 文件名           匹配字符串的后10行
  3. grep –B 10 "被查找的字符串" 文件名           匹配字符串的前10行

4.显示所检索内容在文件中的行数,可以使用参数-n

命令格式: grep -n "被查找的字符串" *.log

5.检索时需要忽略大小写问题,可以使用参数“-i”

命令格式: grep -i "被查找的字符串" *.log

6.从文件内容查找不匹配指定字符串的行

命令格式:grep –v "被查找的字符串" 文件名

7.递归搜索某个目录以及子目录下的所有文件

命令格式:grep –r "被查找的字符串" 文件目录

8.获取哪些文件包含搜索的内容,并列出文件名

命令格式:grep -H –r "被查找的字符串" 文件目录 | cut -d: -f1 [| uniq]

例如:

grep -H -r "v\$temp_space_header" /u01/app/Oracle/product/11.1.0/dbhome_1/rdbms/admin/ | cut -d: -f1

grep -H -r "v\$temp_space_header" /u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/ | cut -d: -f1 | uniq

9.获取与整个搜索字符匹配的内容

命令格式:grep –w "被查找的字符串" 文件名

你可能感兴趣的:(Linux)