awk命令基本用法

本文介绍了awk命令的语法、工作原理及常用命令。语法为awk 'BEGIN{ commands } pattern{ commands } END{ commands }'。工作原理包括开始块、主体块和结束块。还列举了求列数字和、找空行、算文件大小和等常用命令,并给出了参考文档。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

awk命令语法

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

awk工作原理

开始块(BEGIN)

开始块就是在程序启动的时候执行的代码部分,并且它在整个过程中只执行一次。

一般情况下,我们可以在开始块中初始化一些变量。

BEGIN 是 AWK 的关键字,因此它必须是大写的。

注意:开始块部分是可选的,你的程序可以没有开始块部分。

 

主体块(BODY)

对于每一个输入的行都会执行一次主体部分的命令。

默认情况下,对于输入的每一行,AWK 都会执行命令。但是,我们可以将其限定在指定的模式中。

注意:在主体块部分没有关键字存在。

 

结束块(END)

结束块是在程序结束时执行的代码。 END 也是 AWK 的关键字,它也必须大写。 与开始块相似,结束块也是可选的。

 

awk常用命令

  • 求第5列所有数字之和: awk -F "," 'BEGIN{SUM=0}{SUM=SUM+$5} END {print SUM}' test.txt
  • 加判断条件,求第5列所有正整数的和:awk -F',' 'BEGIN{sum=0} {if ($5 > 0) sum+=$5} END{print sum}' test.txt
  • 找出文件中所有空行:   awk 'BEGIN{X=0} /^$/{ X+=1 } END{print "I find",X,"blank lines."}' test.txt
  • 计算当前目录下,所有普通文件的大小之和: ls -l|awk 'BEGIN{sum=0} !/^d/{sum+=$5} END{print "total size is:",sum/1024,"KB"}'

 

 

参考文档:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值