在linux/unix上分析程序日志的技巧
创始人
2024-06-22 00:51:46
0

我们的应用运行在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 的行显示出来

3、  常用选项

-i 匹配时忽略大小写

-n 在打印的行前显示该行在原文件中的行号

-v 该选项,将 grep 的默认行为翻转,打印那些不包含特定模式的行

wc :

作用:统计文件中的行数、字数和字节数

用法:

wc filename

如:

[service@localhost threshold]$ wc nohup.out

9761028   76738200 1672741676 nohup.out

从前到后的三个数分别是行数、字数、字节数。

该指令比较常用的参数是 -l ,这个参数可以只统计行数

[service@localhost threshold]$ wc -l nohup.out

9761028  nohup.out

head:

作用:显示文件的开头 N 行

用法:

head -num filename

如:

head -100 catalina.out

显示 catalina.out 的前 100 行

tail :

作用:显示文件的最后 N 行,或者实时显示文件中新增的内容。

用法:

1、  显示文件最后 N 行

tail -num filename

如:

tail -100 catalina.out

则显示 catalina.out 文件的最后 100 行

2、  实时显示文件中新增内容

tail -f filename

如:

tail -f catalina.out

执行该指令,不会直接返回命令行,而是实时打印日志文件中新增加的内容,这一特性,对于查看日志是非常有效的。如果想终止输出,按 Ctrl+C 即可。
 

【编辑推荐】

  1. Linux系统安全之程序日志的使用概述
  2. Linux安全编程:如何编写安全的应用程序
  3. Linux应用程序安装与管理

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...