一、 cat | grep 命令的使用
1.单个关键字查询日志
cat 日志文件名.log | grep '关键字' //单行显示
cat 日志文件名.log | grep '关键字' -B 5 //之前5行 B的释义:Before
cat 日志文件名.log | grep '关键字' -A 5 //之后5行 A的释义:After
cat 日志文件名.log | grep '关键字' -5 //前后5行
cat 日志文件名.log | grep '关键字' -C 5 //前后5行
cat 日志文件名.log | grep -v '关键字' //排除关键字所在的行的信息
cat -n 日志文件名.log|tail -n +7625359|head -n 10 // 查询7625359行号数据的之后10行
2.多个关键字同时满足
cat 日志文件名.log | grep '关键字1' | grep '关键字2' | grep '关键字3'
3.多个关键字满足任意一个
cat 日志文件名.log | grep -E '关键字1|关键字2|关键字3'
二、 tail -f 命令的使用
1.实时显示日志结果
tail -f 日志文件名.log //实时查看日志文件
tail -10f 日志文件名.log //实时查看日志文件后10行
tail -f 日志文件名.log | grep '关键字' //实时查看关键字过滤后的结果(可以grep命令合并使用)
三、grep命令的使用
1.单个关键字过滤
grep '关键字' 日志文件名.log //单行显示
grep '关键字' -B5 日志文件名.log //之前5行 B的释义:Before
grep '关键字' -A5 日志文件名.log //之后5行 A的释义:After
grep '关键字' -C5 日志文件名.log //前后5行
grep '关键字' -5 日志文件名.log //前后5行
grep -v '关键字' 日志文件名.log //排除关键字所在的行的信息
2.多个关键字同时满足
grep '关键字1' 日志文件名.log | grep '关键字2' | grep '关键字3'
3.多个关键字满足任意一个
grep -E '关键字1|关键字2|关键字3'
四、 日志截取
1.指定时间范围截取日志
sed -n '/开始时间/,/结束时间/'p 日志文件名.log > 保存目录
例:sed -n '/2022-01-24 12:50:00/,/2022-01-24 13:00:00/'p catalina.log > /tmp/test.log
五、 日志结果保存
1.查询日志结果保存
cat 日志文件名.log | grep '关键字' > 保存目录
例:cat catalina.log | grep '关键字' > /tmp/test.log
grep '关键字' 日志文件名.log > 保存目录
例:grep '关键字' catalina.log > /tmp/test.log
2.查询文件目录
find -name catalina.log
find /usr/local -name catalina.log