应用一
- 去掉多字(将多替换成空,即去掉多字):
- 将多少万留下:(\1代表你前面第一个\( \)里面的内容 \2代表第二个,以此例推)
- 避免.*匹配了我们想要的数字,令\(\)前面不是数字[^0-9]:
- 让万的左边允许有空格:
- awk统计所有开头是数字的行,将这些数字累加到一起(程序:条件{动作})
- 结束时打印sum值:
应用二
- 去掉标点符号(标点符号替换成空格):
- 查看单引号ACII码值:\047
- 去掉包含单引号的标点符号(标点符号替换成空格):
- 将每一个空格替换成换行(换行ACII值为012):
- 去掉空行(^ *$匹配0到多个空格并由此结束的行,-v是显示所有不包含这些行,无-v是只保留这些行):
- 排序
- 利用uniq(所有重复行不显示)的-c选项(在开头显示重复行的计数):
- sort -n 按数字大小排序
- 只保留最后两百个:
- 所有大写转小写:
应用三
- 获取网页并将名字重命名为18080html:
- 将<tr换成换行<tr:
- 将所有的标签替换成空格
1.编辑awk程序获取日期:(对播报这一行的字取第一列)
使用awk
- 删除约字:
- 再次编辑awk程序:(对有“查看“一字的行,打印当前的景点、日期、时间(从9点开始)、人数):
- 过滤掉有查看但无暂无的行:
- 批量处理:
9重定向到csv文件:
10.用excel打开时候需要用Notepad将utf-8转成ACII码编码。
应用四
- 文本显示分析由wireshark捕获的文件的上载过程中的网络流量结果cap文件:
- 编写awk程序:(将有2301>123且尾部不是length 0结尾的行,答应其发送最大减去ack的值即发送窗口,第一列是时间):
查找有20>192的行,其ack等于第九列的值:
- 将逗号或者冒号改为空格:
- 调用awk文件
5.第一行,让起始时间为第一列:
让每一行的时间减当前时间得到相对值
6.重定向:>uu.csv