一、tail命令
tail用于实时显示日志信息,对日志进行追踪查看
1.显示最后1000行日志
tail -n 1000 access-2024-07-04.log
2.显示1000行后所有的日志
tail -n +1000 access-2024-07-04.log
3.实时显示日志信息
tail -f access-2024-07-04.log
4.过滤特定接口bigscreen/api的日志并使用awk分列数据5、6、8、9列信息
tail -100f access-2024-07-04.log | grep bigscreen/api | awk -F '|' '{print $6 $9 $8 $5} '
5.统计最后10000行日志 某个接口访问次数
tail -n 10000 /data/logs/access-2024-04-30.log | grep 'POST /app/api/common/getDicListByCode?dicCode=eventSource' |awk -F'|' '{print$5}' |uniq -c
二、sed命令
对日志进行筛选以及统计
1.截取指定行数据 1-1000行
sed -n '1,1000p' access-2024-04-30.log> 0430.log
2.截取指定时间点的日志
sed -n '/2024-05-30/,/2024-05-30/p' wc-ckg-99-4-slow.log >0530.log
3.统计一分钟调用接口次数
sed -n "/`date -d "1 minute ago" +"%Y-%m-%dT%H:%M:%S"`/,/`date +"%Y-%m-%dT%H:%M:%S"`/p" /data/logs/access-2024-06-07.log | awk -F '|' '{ print $5 }' | sort | uniq -c | sort -nr -k1 | head -n 5
三、more
more用于分页显示日志内容
more access-2024-04-30.log #分页显示日志文件内容。
grep -a -n '2024-07-15 ' nohup.out | head -1 #根据日期过滤行号
more +10000 access-2024-04-30.log #从文件第 10000行开始显示。
more -1000 access-2024-04-30.log #显示文件的前 1000行。