日志分析-利用grep,awk等文本处理工具完成(2019-4-9)
0x00 基础日志分析命令
1. tail - 监控末尾日志的变化
$tail -n 10 error2019.log #显示最后10行日志内容
$tail -n +5 nginx2019.log #从第5行开始显示日志内容
$tail -f nginx.log #循环查看日志内容(循环读取日志文件)
$tail -10f nginx.log #监控末尾10行日志变化

2. grep(Global Regular Expression Print,全局正则表达式) - 搜索与日志提取
grep -n 'likely' out.log > test.txt #匹配存在likely字段的行,并保存至test.txt
grep -c 'error' nginx.log #输出日志当中包含‘error’行的行数
grep -v 'error' nginx.log #输出日志当中不包含‘error’行的行数
cat nginx.log | grep -f words.txt #利用words里面的字段在nginx.log中进行匹配
更多其他的命令可以看看下面这个网图:

3.AWK(三个创始人的名字首字母) - 文本文件处理语言
$ awk 动作 文件名 #使用格式
$ awk '{print $1}' error.txt #示例
$ awk -F '|' ‘{print $1}’ error.txt #通过F参数指定‘|’为分隔符,并打印出日志里面的第一个字段。
$ echo 'hack is freedom' | awk '{print $(NF-1),$NF}' #输出倒数第二个字段与最后一个字段。is freedom
$ awk -F '(' '{print NR ")",$1}' pingtest.log #通过NR来打印行数,并通过双引号来输出原样字符。
$ awk -F '(' 'NR % 2 ==1 {print NR,")",$1}' pingtest.log #通过NR运算输出奇数行日志
$ awk -F '(' 'NR > 200 {print NR,")",$1}' pingtest.log #输出第200行之后的日志
未完待续
日志分析-利用grep,awk等文本处理工具完成(2019-4-9)的更多相关文章
- Pyp 替代sed,awk的文本处理工具
Linux上文本处理工具虽不少,像cut,tr,join,split,paste,sort,uniq,sed,awk这些经典工具让人眼花缭乱,而且都太老了,使用方法都不太人性化,尤其awk,语法简直反 ...
- 日志分析查看——grep,sed,sort,awk运用
概述 我们日常应用中都离不开日志.可以说日志是我们在排查问题的一个重要依据.但是日志并不是写了就好了,当你想查看日志的时候,你会发现线上日志堆积的长度已经超越了你一行行浏览的耐性的极限了.于是,很有必 ...
- awk、sed、grep三大shell文本处理工具之grep的应用
1.基本格式grep pattern [file...](1)grep 搜索字符串 [filename](2)grep 正则表达式 [filename]在文件中搜索所有 pattern 出现的位置, ...
- awk、sed、grep三大shell文本处理工具之sed的应用
sed 流编辑器 对文本中的行,逐行处理 非交互式的编辑器 是一个编辑器 1.工作流程 1)将文件的第一行读入到自己的缓存空间(模式空间--pattern space),删除掉换行符 2)匹配,看一下 ...
- awk、sed、grep三大shell文本处理工具之awk的应用
awk 1.是什么 是一个编程语言.支持变量.数组.函数.流程控制(if...else/for/while) 单行程序语言. 2.工作流程 读取file.标准输入.管道给的数据,从第一行开始读取,逐行 ...
- awk 一 文本处理工具
简介 awk 是逐行扫描文件(从第1行到最后一行),寻找含有目标文本的行: 如果匹配成功,则会在该行上执行用户想要的操作. 反之,则不对行做任何处理. awk 命令的基本格式为: awk [选项] ' ...
- grep命令 一 文本搜索工具
使用正则表达式搜索文本,并把匹配的行打印出来.使用权限是所有用户. 基本使用 grep [option] pattern filename: pattern如果是表达式或者超过两个单词的, 需要用引号 ...
- grep 强大的文本搜索工具
1.grep -r "History folder does't exist:" * :中间是要搜索的文本,* 表示全部显示出来
- Linux 文本处理工具grep,sed,awk
grep.sed和awk都是文本处理工具,虽然都是文本处理工具单却都有各自的优缺点,一种文本处理命令是不能被另一个完全替换的,否则也不会出现三个文本处理命令了.只不过,相比较而言,sed和awk功能更 ...
随机推荐
- Matlab矩阵间快速赋值方法
目前还没见到网上用过这个简单的方式 A= [1 2 3; 4 5 6; 7 8 9] B = zeros(5,5) B(1:3, 2:4) = A %将A赋值到B的第1行到3行,第2列岛4列, ...
- Python数据分析帮你清晰的了解整理员工们的工作效率和整体满意度
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 项目背景 2018年,被称为互联网的寒冬之年.无论大小公司,纷纷走上了裁员 ...
- LeetCode59. 螺旋矩阵 II
这题和第54题类似,都是套一个搜索的模板. 用dx和dy表示方向,方向的顺序是先向右,再向下,再向左,再向上,再向右... 如果"撞墙"了就需要改变到下一个方向."撞墙& ...
- 51单片机入门1--与C语言的交接
我们即将进入51单片机的编程学习,咱们今天就来讲解一下单片机中的C语言(你可以称作C51) 在说编程之前,要先说一些别的东西: 二进制,八进制,十六进制 二进制中只有数字0和1,在二进制中1+1为10 ...
- PL/SQL 美化器&规则解释&优化代码
前言 PLSQL有非常强大的自定义设置功能,比如美化文件规则, 使用者可以自行定义编辑规则,以便更好的优化SQL语句,增加可读性. 例如以下的部分代码,又长,分段不好,空格太多,结构散乱,还没有注释. ...
- 每日一题 - 剑指 Offer 46. 把数字翻译成字符串
题目信息 时间: 2019-07-02 题目链接:Leetcode tag: 动态规划 难易程度:中等 题目描述: 给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 "a" ...
- less的使用几个技巧
1.层级关系 让这个box范围内的全部包进来,这样的话就完美的进行调节,再也不用到处找第几行第几个,我刚才在哪个位置给覆盖了.一看便知! .box{ width: 100%; height: 300p ...
- CSS中的一些细节
一.塌陷 1.当position设置为:absolute或者fixed时,元素的display会转换为block.(设置float也会产生这样的效应)2.正常情况下,div会被内容撑开,但是如果设置了 ...
- 【Flutter 实战】动画核心
老孟导读:动画系统是任何一个UI框架的核心功能,也是开发者学习一个UI框架的重中之重,同时也是比较难掌握的一部分,下面我们就一层一层的揭开 Flutter 动画的面纱. 任何程序的动画原理都是一样的, ...
- C++输出三角图形
输出像这样的三角图形 3 1 1 1 1 1 1 1 1 1 1 1 1 ...