awk与正则表达式
2014-07-17 10:39
323 查看
通配符多用在文件名上,比如查找find,ls,cp等。
正则表达式用在文本过滤工具里,比如grep,awk,sed等。
一、通配符
* 可以和零个或多个任意字符匹配
? 与任何单个字符匹配
二、正则表达式
正则表达式中的特殊字符比较多,以下仅列举一些:
. 匹配任何单个字符
$ 匹配行结束符
^ 匹配一行的开始
* 匹配0或多个正好在它之前的那个字符
\ 用来屏蔽特殊字符的含义
匹配操作符(~)
用来在记录或者域内匹配正则表达式。如$ awk '$1 ~/^root/' test将显示test文件第一列中以root开头的行。
!~表示不匹配
#netstat -t | grep '8013'
tcp 0 174 Tencent64:8013 Tencent64:59744 ESTABLISHED
tcp 0 0 Tencent64:59744 Tencent64:8013 ESTABLISHED
tcp 0 174 Tencent64:8013 10.129.145.114:40081 ESTABLISHED
netstat -t | grep '8013'|awk '{if($5!~/Tencent64:.*/) {print $0;}}'
tcp 0 174 Tencent64:8013 10.129.145.114:40081 ESTABLISHED
正则表达式用在文本过滤工具里,比如grep,awk,sed等。
一、通配符
* 可以和零个或多个任意字符匹配
? 与任何单个字符匹配
二、正则表达式
正则表达式中的特殊字符比较多,以下仅列举一些:
. 匹配任何单个字符
$ 匹配行结束符
^ 匹配一行的开始
* 匹配0或多个正好在它之前的那个字符
\ 用来屏蔽特殊字符的含义
匹配操作符(~)
用来在记录或者域内匹配正则表达式。如$ awk '$1 ~/^root/' test将显示test文件第一列中以root开头的行。
!~表示不匹配
#netstat -t | grep '8013'
tcp 0 174 Tencent64:8013 Tencent64:59744 ESTABLISHED
tcp 0 0 Tencent64:59744 Tencent64:8013 ESTABLISHED
tcp 0 174 Tencent64:8013 10.129.145.114:40081 ESTABLISHED
netstat -t | grep '8013'|awk '{if($5!~/Tencent64:.*/) {print $0;}}'
tcp 0 174 Tencent64:8013 10.129.145.114:40081 ESTABLISHED
相关文章推荐
- 正则表达式、sed、awk相关资料笔记资料整合
- awk 正则表达式
- awk 正则表达式
- awk sed grep 正则表达式
- 正则表达式之旅_sed_awk
- 正则表达式、find、grep、awk、sed
- 正则表达式之awk学习笔记
- 正则表达式的整理grep,sed,awk
- 深入入门正则表达式(java) - 匹配原理 - 2 - 回溯
- 正则表达式
- 正则表达式(括号)、[中括号]、{大括号}
- 【转载】sed和awk中使用shell变量
- shell中的grep,awk,sed,cut,sort
- 深入理解正则表达式
- awk的读取处理结构数据的案例
- 正则表达式
- gmt绘制中国省界,结合awk和RGB列表绘制中国地震台站分布
- awk 统计 固定时间的日志数量 并统计运行多长时间
- awk如何取出它的每一行和某一列的某个元素
- 正则表达式