awk内置变量
awk有许多内置变量用来设置环境信息,可修改;下表是一些常用的内置变量及其含义:
——————————————————————————————————————————————
ARGC 命令行参数个数
ARGV 命令行参数排列
ENVIRON 支持队列中系统环境变量的使用
FILENAME awk浏览的文件名
FNR 浏览文件的记录数
FS 设置输入域分隔符,等价于命令行-F选项
NF 浏览记录的域个数
NR 已读的记录数
OFS 输出域分隔符
ORS 输出记录分隔符
RS 控制记录分隔符
——————————————————————————————————————————————
记录个数:
awk 'END {print NR}' grade.txt
5
打印域个数,行号,记录,以及文件名
awk '{print NF,NR,$0} END {print FILENAME}' grade.txt
7 1 M.Tansley 05/99 48311 Green 8 40 44
7 2 J.Lulu 06/99 48317 green 9 24 26
7 3 P.Bunny 02/99 48 Yello 12 35 28
7 4 J.Troll 07/99 4842 Brown-3 12 26 26
7 5 L.Tansley 05/99 4712 Brown-2 12 30 28
grade.txt
若有数据,找出包含Brown的数据行:
awk '{if (NR > 0 && $4 ~/Brown/) print $0}' grade.txt
J.Troll 07/99 4842 Brown-3 12 26 26
L.Tansley 05/99 4712 Brown-2 12 30 28
NF强大的功能
echo $PWD
/usr/xxxx/ytcclb
取出当前目录名:
echo $PWD | awk -F/ '{print $NF}'
ytcclb
取出文件名及后缀
echo "/usr/xxxx/ytcclb/cat_file.txt" | awk -F/ '{print $NF}'
cat_file.txt
AIX下AWK语言的内置变量
内容版权声明:除非注明,否则皆为本站原创文章。
转载注明出处:http://www.heiqu.com/3f7b9c8388c1fccff9630f3f241f8879.html