常用的查看、筛选、分析日志的Linux命令
来源:互联网 发布:淘宝高硼硅玻璃有毒吗 编辑:程序博客网 时间:2024/05/21 12:50
总结一些平时查看日常或线上日志常用的Linux命令,主要包括查看、筛选、分析、统计的命令。
1.查看日志
查看日志的命令主要有cat,tac,head,tail。
(1)cat命令经常用于查看日志文件,打印连续的内容。对于日常或者线上的机器来说,往往日志文件很大,将连续的日志打印出来,并不能快速的找到结果,并不建议使用。
(2)tac命令与cat命令恰恰相反,tac命令是将文件反序打印出来,从文件的最后一行开始打印。使用场景并不多。
(3)head命令用于取出文件的前几行,默认取前10行,可以加上参数-n,n用于代表前多少行。
(4)tail命令用于取出文件的后几行,默认取前10行,同样可以加上参数-n。平时用的最多的是用tail -f来动态的观察日志。
(5)zcat命令用于查看压缩文件中的信息,好处是不用解压文件就可以查看。
2.筛选日志
(1)grep命令是用的最多的分析日志的命令,通过对一行信息进行分析,筛选出想要的信息。简单的语法如下:
grep [-acinv] [--color=auto] '筛选的字符串' 文件名
-a:表示将binary文件以text的文件格式进行查找
-c:得出匹配得到的信息的行数
-i:筛选文件时不区分大小写
-n:输出筛选结果的同时,输出行号
-v:查找不包含筛选条件的信息
-color=auto:为筛选结果中的关键字标记颜色
-A:后面加行数n,用于列出关键字对应行以及后面n行
-B:后面加行数n,用于列出关键字对应行以及前面n行
(2)zgrep命令,用法与grep没什么区别,但是适用于压缩文件,在筛选压缩文件中的信息时,速度很快。
3.分析日志
(1)awk命令,基于一行数据通过分段的方式进行处理,字段是它处理的最小单位。
默认情况下,awk用空格符和tab键来进行分段。如awk '{print $1}' test.log,将test.log中每一行数据分段后,打印第一列数据。
当然,也可以设置数据的分隔符,如awk 'BEGIN{FS=":"}{print $1}' test.log,将分隔符设置为":"。
另外,也可以进行一些逻辑判断,如awk 'BEGIN{FS=":"} $>3 {print $1}' test.log,增加列第三列数据大于3的条件。
(2)sort命令可以对筛选得到的结果进行排序,它可以根据不同的数据类型进行排序。语法如下:
sort [-fbMnrtuk] [file or stdin]
-f:不区分大小写
-b:忽略最前面的空格
-M:以月份进行排序
-n:按照数字进行排序
-r:反序
-t:分隔符,默认为Tab键
-u:uniq,过滤相同的数据
-k:以那个区间进行排序
(3)uniq命令用来过滤重复数据,同样的数据只显示一次。语法如下:
uniq [-ic]
-i:不区分大小写
-c:显示出现的次数
(4)wc命令用于统计文件里的字,行,字符的数量。
wc [-lwm]
-l :统计行数
-w:统计字数
-m:统计字符数
其他相关的Linux命令还有很多,有待完善。
1.查看日志
查看日志的命令主要有cat,tac,head,tail。
(1)cat命令经常用于查看日志文件,打印连续的内容。对于日常或者线上的机器来说,往往日志文件很大,将连续的日志打印出来,并不能快速的找到结果,并不建议使用。
(2)tac命令与cat命令恰恰相反,tac命令是将文件反序打印出来,从文件的最后一行开始打印。使用场景并不多。
(3)head命令用于取出文件的前几行,默认取前10行,可以加上参数-n,n用于代表前多少行。
(4)tail命令用于取出文件的后几行,默认取前10行,同样可以加上参数-n。平时用的最多的是用tail -f来动态的观察日志。
(5)zcat命令用于查看压缩文件中的信息,好处是不用解压文件就可以查看。
2.筛选日志
(1)grep命令是用的最多的分析日志的命令,通过对一行信息进行分析,筛选出想要的信息。简单的语法如下:
grep [-acinv] [--color=auto] '筛选的字符串' 文件名
-a:表示将binary文件以text的文件格式进行查找
-c:得出匹配得到的信息的行数
-i:筛选文件时不区分大小写
-n:输出筛选结果的同时,输出行号
-v:查找不包含筛选条件的信息
-color=auto:为筛选结果中的关键字标记颜色
-A:后面加行数n,用于列出关键字对应行以及后面n行
-B:后面加行数n,用于列出关键字对应行以及前面n行
(2)zgrep命令,用法与grep没什么区别,但是适用于压缩文件,在筛选压缩文件中的信息时,速度很快。
3.分析日志
(1)awk命令,基于一行数据通过分段的方式进行处理,字段是它处理的最小单位。
默认情况下,awk用空格符和tab键来进行分段。如awk '{print $1}' test.log,将test.log中每一行数据分段后,打印第一列数据。
当然,也可以设置数据的分隔符,如awk 'BEGIN{FS=":"}{print $1}' test.log,将分隔符设置为":"。
另外,也可以进行一些逻辑判断,如awk 'BEGIN{FS=":"} $>3 {print $1}' test.log,增加列第三列数据大于3的条件。
(2)sort命令可以对筛选得到的结果进行排序,它可以根据不同的数据类型进行排序。语法如下:
sort [-fbMnrtuk] [file or stdin]
-f:不区分大小写
-b:忽略最前面的空格
-M:以月份进行排序
-n:按照数字进行排序
-r:反序
-t:分隔符,默认为Tab键
-u:uniq,过滤相同的数据
-k:以那个区间进行排序
(3)uniq命令用来过滤重复数据,同样的数据只显示一次。语法如下:
uniq [-ic]
-i:不区分大小写
-c:显示出现的次数
(4)wc命令用于统计文件里的字,行,字符的数量。
wc [-lwm]
-l :统计行数
-w:统计字数
-m:统计字符数
其他相关的Linux命令还有很多,有待完善。
阅读全文
0 0
- 常用的查看、筛选、分析日志的Linux命令
- linux查看日志常用的一个命令
- LINUX常用的日志分析命令
- Linux 查看日志的命令
- 常用Linux日志查看命令
- Linux 常用查看日志命令
- 查看linux系统的日志命令
- Linux查看日志相关的命令
- Linux 服务器查看日志的命令
- linux下查看日志的常用的文本编辑命令以及vim的使用
- 常用Linux日志查看命令集合
- Linux 常用查看日志命令 tail
- Linux常用查看日志命令tail
- linux常用的查看设备的命令
- linux常用的查看设备的命令
- linux常用的查看系统命令
- 常用的Linux系统信息查看命令
- 常用的linux命令--查看系统信息
- nodejs版本更新后打不开原有项目
- 2018年书单
- Android 解决webview中下载第三方APP的问题
- ROS Kinetic 安装在 Ubuntu16.04报错:Your system is running in low-graphics mode
- 重载与重写的区别
- 常用的查看、筛选、分析日志的Linux命令
- 11、Android开发基础之Logcat的使用
- linux彻底卸载mysql
- 当设置了PASSWORD_LIFE_TIME后,密码到期之前会有提示
- JVM运行时数据区域
- android 横屏(全屏)搜索时无效是为什么?
- hook glibc
- yii checkList设置默认选项
- Kotlin的委托属性和区间