====================================================================================
显示文本文件 myfile 中第七行到第十五行中以字符%分隔的第一字段, 第三字段和第七字段:
awk 'NR==7,NR==15 {printf $1 "," $3 "," $7 "\n"}' myfile
====================================================================================
显示文件 myfile 中的行号和第 3 字段:
awk -F% '{printf"%03d %s\n",NR,$1}' myfile
====================================================================================
显示文本文件 mydoc 匹配(含有)字符串"sun"的所有行:
awk '/sun/{print}' mydoc
awk '/sun/' mydoc
====================================================================================
显示第一个匹配 Sun 或 sun 的行与第一个匹配 Moon 或 moon 的行之间的行,并显示到标准输出上:
awk '/[Ss]un/,/[Mm]oon/ {print}' myfile
====================================================================================
显示文本 myfile中所有超过80 个字符的行号,在这里,用$0 表示整个记录(行) ,同时,内置变量 NR不使用标志符'$':
awk 'length($0)>80 {print NR}' myfile
====================================================================================
/etc/passwd 文件,检查其中的 passwd 字段(第二字段)是否为"*",如不为"*",则表示该用户没有设置密码,显示出这些用户名(第一字段):
awk -F: '$2=="" {printf("%s no password\n",$1)}' /etc/passwd
====================================================================================
awk 'BEGIN{FS=":"; print("Sell Statistics Initial Total is ",total=0)} {print"Sell amount of Money is " $3; total=total+$3} END{printf("Sell Statistics Finally Total is %.2f\n",total)}'sx text
====================================================================================
grep "numOfValues" xx | awk '{print $3}' | sed -e 's/"\([0-9]*\)/\1/gw yy'
awk 'BEGIN{total=0} {total=total+$1} END{print total}' yy
====================================================================================
显示文本文件 myfile 中第七行到第十五行中以字符%分隔的第一字段, 第三字段和第七字段:
awk 'NR==7,NR==15 {printf $1 "," $3 "," $7 "\n"}' myfile
====================================================================================
显示文件 myfile 中的行号和第 3 字段:
awk -F% '{printf"%03d %s\n",NR,$1}' myfile
====================================================================================
显示文本文件 mydoc 匹配(含有)字符串"sun"的所有行:
awk '/sun/{print}' mydoc
awk '/sun/' mydoc
====================================================================================
显示第一个匹配 Sun 或 sun 的行与第一个匹配 Moon 或 moon 的行之间的行,并显示到标准输出上:
awk '/[Ss]un/,/[Mm]oon/ {print}' myfile
====================================================================================
显示文本 myfile中所有超过80 个字符的行号,在这里,用$0 表示整个记录(行) ,同时,内置变量 NR不使用标志符'$':
awk 'length($0)>80 {print NR}' myfile
====================================================================================
/etc/passwd 文件,检查其中的 passwd 字段(第二字段)是否为"*",如不为"*",则表示该用户没有设置密码,显示出这些用户名(第一字段):
awk -F: '$2=="" {printf("%s no password\n",$1)}' /etc/passwd
====================================================================================
awk 'BEGIN{FS=":"; print("Sell Statistics Initial Total is ",total=0)} {print"Sell amount of Money is " $3; total=total+$3} END{printf("Sell Statistics Finally Total is %.2f\n",total)}'sx text
====================================================================================
grep "numOfValues" xx | awk '{print $3}' | sed -e 's/"\([0-9]*\)/\1/gw yy'
awk 'BEGIN{total=0} {total=total+$1} END{print total}' yy
====================================================================================