1.动态循环查看文件内容
tail -n 10 test.log 查询日志尾部最后10行的日志;
tail -n +10 test.log 查询10行之后的所有日志;
head -n 10 test.log 查询日志文件中的头10行日志;
head -n -10 test.log 查询日志文件除了最后10行的其他所有日志;
- tail -f /var/cashman-app/log/cashman-app.2018-04-26.log
2.按行号查看---过滤出关键字附近的日志
使用cat -n filename |grep "关键字"
- cat -n /var/cashman-app/log/cashman-app.2018-04-26.log |grep "支付宝还款入账"
3.查看这个关键字前10行和后10行的日志
使用cat -n filename|tail -n +92|head -n 20
tail -n +92表示查询92行之后的日志
head -n 20 则表示在前面的查询结果里再查前20条记录
- cat -n /var/cashman-app/log/cashman-app.2018-04-26.log|tail -n +92|head -n 20
4.根据关键字匹配前后几行
在Linux环境下,查看文件内容时,很多时候需要查看指定关键字的前后几行,如查看日志文件时,如果日志文件太大,想直接在Linux 终端中查看,可以grep ‘partten’ filename 进行过滤,如果想查看匹配行的前后几行,可通过在grep后面添加参数来实现,具体如下:
#grep -A 5 ‘parttern‘ filename //打印匹配行的后5行
#grep -B 5 ‘parttern‘ filename //打印匹配行的前5行
#grep -C 5 ‘parttern‘ filename //打印匹配行的前后5行
#grep -5 ‘parttern‘ filename //打印匹配行的前后5行
- cat -n /var/cashman-app/log/cashman-app.2018-04-26.log |grep -A 5 "支付宝还款入账"
5. 根据行号获取范围内容
使用sed -n ‘开始行,结束行p‘ filename
- sed -n ‘292897,292900p‘ /var/cashman-app/log/cashman-app.2018-04-26.log
原文地址 : https://www.cnblogs.com/study-everyday/p/8953156.html