不管是开发、测试、还是运维,查询服务器上的日志信息是经常要做的,以下就列出了几个比较常用的查询日志的命令。
1. tail -f log.txt 这个是我们最常用的一个命令了,-f表示循环读取,也就是实时查看正在改变的日志文件,日志文件的改动都会展示在你的眼前
2. cat log.txt 这也是我们常用的一个命令,但这个命令不能实时查看正在改动的日志,它会将该日志全部内容展示出来(截止到命令生效那一刻的全部内容),如果这个日志内容较多的话,这个命令就一点都不好用了;
另外 cat -n log.txt可以用来显示行号(包含空行),cat -b logx.txt 也可以用来显示行号(不包含空行);
3. tail -n 5 log.txt 显示日志尾部最后5行的数据
tail -n +5 log.txt 显示日志5行之后的数据
head -n 5 log.txt 显示日志文件中头5行的数据
head -n -5 log.txt 显示日志文件中除了最后5行的其它数据
以上这四个命令用的比较多,而且也好用,尤其是那种内容很多的日志文件
4. 查询两个时间段内的日志
sed -n '/YYYY-MM-DD hh:mm:ss/,/YYYY-MM-DD hh:mm:ss/p' log.txt
这个命令的前提是你的日志中能显示时间,就利用日志中的两个时间进行查询
5. cat -n log.txt | grep 'abc' > test.txt
改命令中“>”才是重点,意思是将该查询条件下的日志信息导入到test文件中,这个命令用来记录较大日志文件的部分内容,因为日志内容较大,查询或者做其它操作很不方便,这时就可以将要查的内容导入到另一个文档中,再进行下一步的查询操作,这样就方便多了。
网友评论