awk学习总结
AWK 是一种处理文本文件的语言,是一个强大的文本分析工具。
之所以叫 AWK 是因为其取了三位创始人 Alfred Aho,Peter Weinberger, 和 Brian Kernighan 的 Family Name 的首字符。
BEGIN关键字
在处理数据前运行一些脚本命令
awk 'BEGIN{print "The data3 File Contents:"}{print $0}' data.txt
END关键字
在读完数据后执行的内容
awk 'BEGIN{print "The data3 File Contents:"}{print $0}END{print "End of File"}' data.txt
内置变量
FILENAME:当前文件名
FS:字段分隔符,默认是空格和制表符。
RS:行分隔符,用于分割每一行,默认是换行符。
OFS:输出字段的分隔符,用于打印时分隔字段,默认为空格。
ORS:输出记录的分隔符,用于打印时分隔记录,默认为换行符。
OFMT:数字输出的格式,默认为%.6g。
常见参数
- -F fs or --field-separator fs
指定输入文件折分隔符,fs是一个字符串或者是一个正则表达式,如-F:。
awk -F ':' '{print $1}'
- 变量NF表示当前行有多少个字段,因此$NF就代表最后一个字段。
➜ ~ echo 'this is a test' | awk '{print $NF}'
test
➜ ~ echo 'this is a test' | awk '{print NF}'
4
网友评论