linux常用过滤工具

grep过滤工具:

选项:

-E:可以使用正则表达式

-v:取反查找

-P:配合\d使用

-w:匹配数字、字母、下划线

-s:匹配空格个tab键

参数:

\d:匹配[0-9]

匹配IP地址:

(25[0-5]\.|2[0-4]\d\.|1?\d?\d\.){3}(25[0-5]|2[0-4]\d|1?\d?\d)

 egrep过滤工具(默认支持正则):

sed流式编辑器:

语法:

sed 选项 条件 指令 被处理文档

选项:

-n:屏蔽默认输出

-r:支持扩展正则

-i:修改源文件

指令:

p:输出

d:删除

s:替换

a:行下追加

i:行上追加

c:替换整行

数字加p:输出第几行

等号:输出行号

sed 'bash$' 's/:.*//p'        当使用s替换时,只显示被替换的行

awk精确搜索,逐行处理:

awk -F定义分隔符

NR 行号

NF 列号

定义多个分隔符

awk -F[/:] {print}

条件:

1. 字符串        ~包含        !~不包含

2. 使用数字或者是字符串

== != > >= < <=

3. 逻辑组合        &&        ||

进阶使用:

 BEGIN,读取文档之前执行一次

逐行任务,读文档时执行n次

END,读取文档完毕后执行一次

一起使用

awk 'BEGIN{}{}END{}'

使用awk数组 + for循环实现高级搜索

案例

awk "BEGIN{s[$1]++}END{for(i in s){print i,s[i]}"        输出次数

sort        升序排列

sort -r        降序排列

sort -n        按照数字大小从小到大进行了排序

sort -k 2 -n test.txt

这个命令会按照每行的第二个字段(即年龄)进行排序,并且按照数字大小进行比较。

输出结果如下:

 
Bob 20
Alice 25
Charlie 30

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值