awk 数据处理工具

awk '条件类型1{动作1} 条件类型2{动作2} ...' filename

awk 后面接两个单引号并加上大括号 {} 来设定想要对数据进行的处理动作。 awk 可以处理后续接的档案,也可以读取来自前个指令的 standard output。

last -n 5 | awk '{print $1 "\t" $3}'   

root 192.168.1.100

root 192.168.1.100

root 192.168.1.100

dmtsai 192.168.1.100

root Fri

#数据中出现空格就会出现误判。 上例显示last第一列与第三列的值, 中间用tab隔开。

 

awk内建变量

NF          每一行 ($0) 拥有的字段总数
NR    目前 awk 所处理的是『第几行』数据
FS  目前的分隔字符,默认是空格键

last -n 5| awk '{print $1 "\t lines: " NR "\t columes: " NF}'

root lines: 1 columes: 10

root lines: 2 columes: 10

root lines: 3 columes: 10

dmtsai lines: 4 columes: 10

root lines: 5 columes: 9

# 注意喔,在 awk 内的 NR, NF 等变量要用大写,且不需要有钱字号 $ 啦!非变量要用双引号括起来。

cat /etc/passwd |  awk 'BEGIN {FS=":"} $3 < 10 {print $1 "\t " $3}'   #显示按:分隔第三列(UID)小于10的账号与UID

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值