[Linux]awk报告生成器

1、介绍

awk报告生成器,逐行处理文本,可在行首进行准备工作,最后行做结束工作。

2、awk格式

awk 'BEGIN{ commands }{ commands } END{ commands }'

BEGIN{}读入第一行文本工作

{}逐行处理

END{}处理完最后一行工作

NR 表示行

NF 表示列

常用选项:

-F                                         指定分隔符

-f scripfile                            从脚本文件中读取awk命令

3、测试

(1)awk 'BEGIN{print "hi\n"}{print $0}' file1

在读入第一行前输出hi,并输出所有行

(2)awk 'NR==3{print}' file1

输出file1文件的第三行

(3)awk -F : '{print NF,$2}' file1

查看以:作为分割符,每行输出总列数及分割后的第2列

(4)awk 'BEGIN{a=10;print 66+a}'

处理前赋值a为10,之后输出66+a的结果,处理两条命令需添加;作为分隔

(5)awk '/^ro/{print}' /etc/passwd

输出/etc/passwd以ro作为开头的行

(6)awk 'BEGIN{n=0}/nologin$/{n++}END"{print n}' /etc/passswd

查找passwd下结尾为nologin登陆的行数

(7)awk -F : '$6!~/^\/home/&&/bash$/{print}' /etc/passwd

查找到passwd下家目录不是在/home下且可以登陆的行

(8)awk -F : '$6~/bin$/{print $1}' /etc/passwd

输出以:作为分隔符,第6列以bin结尾的用户

(9)从ifconfig中获取ip

命令:ifconfig eth0 | awk -F " " 'NR==2{print $2}'

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值