我们的应用运行在linux上,很多同事对命令行操作有恐惧感,于是为了分析linux上程序的日志,采用的是 FTP+Ultraedit 方法。这种方式不方便、实时性不够,也不够专业。如果碰到几百兆甚至上G的日志文件,这种分析方式的效率也很成问题,尤其是需要实施跟踪日志的情况下。
于是我把在 linux 上分析程序日志的几个常用指令及其配合使用总结一下,希望对大家有所帮助。
指令介绍:
more :
作用:该指令,可以将文件的内容,从前向后,每次一屏,打印到终端屏幕上。
用法:
more filename
显示一屏信息后,’空格’ 向下翻一屏,’回车’ 向下翻一行,'q' 退出。
cat :
作用:该指令本来的作用,是将多个文件的内容合并起来,打印到标准输出,但最常见的用法是显示一个文件的内容,但文件比较大的情况,屏幕会很快滚动,无法查看有效信息,建议使用 more 。
用法:
cat filename
grep :
作用:打印文件或者标准输入中符合特定模式的行,该指令是从日志文件中检索特定信息的最有效手段。
用法:
1、 基本用法
grep pattern filename
如:
grep “error” catalina.out
可以将 tomcat 日志 catalina.out 中所有包含 error 的行显示出来
2、 使用正则表达式
grep -e “pattern” filename
如:
grep -e “[eE]rror” catalina.out
可以将 tomcat 日志 catalina.out 中所有包含 error 或者 Error 的行显示出来