linux下字符串处理工具二:awk( 二),awk脚本

awk脚本

awk脚本是一个可执行的文件,常习惯以.awk命名。
结构:

 $test.awk             
  #!/bin/awk -f       #脚本系统中awk的位置
  BEGIN{} #脚本主体之前,执行些什么。该行内的语句,可以只执行一次
  {}   #脚本主体,此中的语句,会根据awk要处理的对象文本中的行数,以及匹配条件,执行零次或多次
  END{} #本主体之后,执行些什么。(该部分与BEGIN类似,只是相对于主体的位置不同)。

执行awk脚本的命令:
awk -f awk-script-file input-file
截取/etc/passwd的五行存为5.txt作为例子:

_spotlight:*:89:89:Spotlight:/var/empty:/usr/bin/false
_tokend:*:91:91:Token Daemon:/var/empty:/usr/bin/false
_securityagent:*:92:92:SecurityAgent:/var/db/securityagent:/usr/bin/false
_calendar:*:93:93:Calendar:/var/empty:/usr/bin/false
_teamsserver:*:94:94:TeamsServer:/var/teamsserver:/usr/bin/false

例子:以:为分隔符,打印被解析文件的第一,四,五列。

➜  awkstudy  cat one.awk
#!/bin/awk -f
BEGIN {
    FS=":"
}
{ print $1 "   " $4 "   " $5 }
END{
print "ok"
}
➜  awkstudy  awk -f one.awk 5.txt
_spotlight   89   Spotlight
_tokend   91   Token Daemon
_securityagent   92   SecurityAgent
_calendar   93   Calendar
_teamsserver   94   TeamsServer
ok
➜  awkstudy
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值