简单学习awk
来源:互联网 发布:java中的接口是什么 编辑:程序博客网 时间:2024/05/19 12:40
在代码里偶然看到有一个语句
cat /proc/net/bonding/bond0 |grep Mode|awk '{print$3}
这句话的目的就是去/proc/net/bonding/bon0问价中,查找包含Mode字符的行,取出第三列的字符串。
之前学习shell的时候,看到过awk,这次再学习一下,记录下来,以便以后再用。
awk的基本语法
Usage: awk [POSIX or GNU style options] -f progfile [--] file ...
Usage: awk [POSIX or GNU style options] [--] 'program' file ...
Usage: awk [POSIX or GNU style options] [--] 'program' file ...
常用参数:
-Fre awk默认的分隔符是空格,可以自己用-F来自定义
'program'这个语句段必须用单拓号:'和'括起,以防被shell解释。这个程序语句段的标准形式为:'pattern {action}'
file自然就是解析的文件了,也可以是解析管道符传过来的字符串
awk应用简单举例,拿机子上的/proc/net/arp举例,取出eno16777736的arp信息
[root@bogon ~]# cat /proc/net/arp
IP address HW type Flags HW address Mask Device
192.168.1.101 0x1 0x2 dc:0e:a1:d9:9e:b9 * eno16777736
192.168.1.1 0x1 0x2 8c:21:0a:91:84:9e * eno16777736
IP address HW type Flags HW address Mask Device
192.168.1.101 0x1 0x2 dc:0e:a1:d9:9e:b9 * eno16777736
192.168.1.1 0x1 0x2 8c:21:0a:91:84:9e * eno16777736
表达式1:
[root@bogon ~]# cat /proc/net/arp | grep eno16777736| awk '{print $1,$4}'
192.168.1.101 dc:0e:a1:d9:9e:b9
192.168.1.1 8c:21:0a:91:84:9e
192.168.1.101 dc:0e:a1:d9:9e:b9
192.168.1.1 8c:21:0a:91:84:9e
表达式2:
[root@bogon ~]# awk '/eno16777736/ {print $1,$4}' /proc/net/arp
192.168.1.101 dc:0e:a1:d9:9e:b9
192.168.1.1 8c:21:0a:91:84:9e
192.168.1.101 dc:0e:a1:d9:9e:b9
192.168.1.1 8c:21:0a:91:84:9e
两个表达式起到了同样的效果,学习的多了,开始只知道用表达式1那种,现在知道了表达式二这种,也是小小的进步吧
阅读全文
0 0
- 简单学习awk
- Linux--awk命令的简单学习
- Awk学习
- awk学习
- awk学习
- awk学习
- AWK学习
- awk 学习
- awk 学习
- awk学习
- awk学习
- AWK学习
- awk学习
- awk学习
- Awk学习
- awk学习
- awk 学习
- awk学习
- KMS特好用的windows和office激活工具
- Android中架构X64与X32的不同
- SQL Server相同列只显示一条数据,不影响其他行数据
- python的一些东西
- ubuntu 14.04 server 依赖教育镜像服务器搭建本地镜像服务器
- 简单学习awk
- 排序-选择排序-数据结构(31)
- thymeleaf参考手册
- 工程模板设置
- win10 python2.7环境下安装pypcap
- C语言字符串详解
- 洛谷 P1282 多米诺骨牌
- mui中的页面传值方法
- C语言-数据结构-单链表倒置