awk基础
简介
awk程序的报告生成能力通常用来从大文件文本文件中提取数据元素并将它们格式化成可读的报告。awk程序允许从日志文件中只过滤出你要看的数据元素,并以某种更容易读取重要数据的方式将他们格式化。awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。
awk命令格式
awk options program file
从命令行中读取程序脚本
awk '{print "Hello john!"}'
如果输入一行文本并按下回车键,awk会对这行文本运行一遍所有的程序脚本
使用数据字段变量
cat data3
awk '{print $1}' data3
在程序脚本中使用多个命令
#用分号分隔命令
echo "My name is Rich" | awk '{$4="Christine";print $0}'
从文件中读取程序
cat script2
awk -F: -f script2 /etc/passwd #-f后接脚本文件
'{print $1 "'\''" "s home directory is" $6}' /etc/passwd
在处理数据前运行脚本
BIGIN:强制awk在读取数据前执行BEGIN关键字后指定的程序脚本
END:强制awk在读完数据后执行BEGIN关键字后指定的程序脚本
'BEGIN {print "The data4 File Contents:"} {print $0}' data4
awk 'BEGIN {print "The data4 File Begins:"}{print $0} END {print "The data4 File Ends"}' data4