1.查询日志中含有某个关键字的信息
1
cat app.log |grep 'error'
1
2.查询日志尾部最后10行的日志
1
tail -n 10 app.log
1
3.查询10行之后的所有日志
1
tail -n +10 app.log
1
4.查询日志文件中的头10行日志
1
head -n 10 app.log
1
5.查询日志文件除了最后10行的其他所有日志
1
head -n -10 app.log
1
6.查询日志中含有某个关键字的信息,显示出行号(在1的基础上修改)
1
cat -n app.log |grep 'error'
1
7.显示102行,前10行和后10行的日志
1
cat -n app.log |tail -n +92|head -n 20
1
8.根据日期时间段查询(前提日志总必须打印日期,先通过grep确定是否有该时间点)
1
sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p' app.log
1
9.使用more和less命令(分页查看,使用空格翻页)
1
cat -n app.log |grep "error" |more
1
10.吧日志保存到文件
1
cat -n app.log |grep "error" > temp.txt
1
如有更好的查询日志的策略,敬请留言,方便收录!
linux 如何快速的查找日志中你所要查找的信息
阅读数 2万+
在工作中我总会通过日志来查找相关问题,但有时候日志太多有不知道又不知道日志什么时候打印的,这时我们可以通过一下方法来查找:1、把目录跳到你日志文件存放的地方2、grep 关键 * 例如要查找多有有关...
博文
来自: 信
jnjeC:
sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p' app.log
假如日志里不存在内容为2014-12-17 16:17:20 的一行,会搜不出东西的。 假如2014-12-17 16:17:36不存在,就会一直截取到末尾。 p是打印的意思。 我的一个示例命令是:
sed -n '/\[08-13 11:02/,/\[08-13 11:03/p' mmmlog.log
其中\[表示 log4j的格式为 [08-13 11:03:00 012]开头的[。 这个命令匹配到08-13 11:03的一行就结束了,后面的行不会再匹配了。