常用的日志查找命令

less、more命令:支持日志文件滚屏查找功能

less logfile
more logfile

grep命令:匹配查找并可替换内容,相当于过滤器

grep 'keyword' logfile //打印日志中包含关键字的行
grep -n 'keyword' logfile|more //分页打印包含关键字的日志
grep -n 'keyword' logfile|less //分页打印包含关键字的日志
grep -5 'keyword' logfile //打印匹配行的前后5行
grep -v 'keyword' logfile //打印不含关键字的行

sed命令:匹配查找并可替换内容,相当于修改器

sed就是遍历对于输入文件的每一行,如果该行匹配地址1,地址2的范围之内,那么就对这一行执行命令。
sed [-n][-e] ‘命令’ 文件 #-n选项是默认不输出信息,除非使用了p命令或者是s命令的p标志符;-e是表明空格后面接的是一个命令 ;
sed [-n] -f 脚本 文件 #这个用法是把命令写在脚本里

sed -n '/^2018-01-03.*ERROR/p' logfile // 输出日志文件中某个日志中的包含ERROR的行
sed -n '190,196p' logfile //查看文件logfile的第190行到196行
sed -n '/2017-01-04 11:00:00/,/2017-01-04 11:20:55/p' logfile //查看这个时间段的日志(两个时间必须在日志文件中存在)
sed -i 'keyword/d' logfile  //删除包含关键词的行

tail命令 : 从最新开始查看实时的

tail -f logfile //查看实时日志
tail -100f logfile //打印最后100行日志 ,等价于 tail -n 400 -f
tail -n +100 logfile //查看某文件logfile指定行号100后的内容
tail -n 1000 logfile|more //分页打印最新1000行日志
tail -n 1000 logfile|less //分页打印前1000行日志

cat命令:从最早开始查看历史的

cat logfile //从头开始查看日志
cat -n logfile //从头开始查看日志并显示行号
cat logfile|more //分页查看日志,按Ctrl+f打印下一页,按Enter打印下一行
cat logfile|less //分页查看日志,按Enter打印下一行,输入需要显示的行数n再按Enter,打印n行
cat logfile | grep -C 5 'keyword' //显示日志文件里匹配关键字那行以及上下5行
cat logfile | grep -B 5 'keyword' //显示日志文件里匹配关键字那行以及前5行
cat logfile | grep -A 5 'keyword' //显示日志文件里匹配关键字那行以及后5行
cat logfile|tail -n +1000|head -n 500 //从第1000行开始,显示500行日志

猜你喜欢

转载自blog.csdn.net/sinat_23324343/article/details/78978453