内置变量
<b><font color="#c41230">NR</font></b>(Number of Records):当前处理的文本行的行号
访问多个文件时,如每个文件都有匹配内容,所有文件行号会一起计数,如:1,2,3,4
<b><font color="#c41230">FNR</font></b>(File Number of Records):各文件分别计数的行号
访问多个文件时,如每个文件都有匹配内容,每个文件行号分别计数,如:1,2,1,2
<b><font color="#c41230">FS</font></b>(Field Separator):输入列分隔符,默认"空格"
<b><font color="#662c90">输入</font></b>列分隔符变量:<b><font color="#c41230">FS</font></b>(Field Separator),<br>读取文件时使用,将每一行文本分隔成列
格式:"<b><font color="#c41230">-F分隔符</font></b>"<br>如:"<font color="#0076b3">awk -F. '{print $1}'</font>",指定分隔符为".",输出第1列
格式:"<b><font color="#c41230">-v FS='分隔符'</font></b>"<br>如:"<font color="#0076b3">awk -v FS='.' '{print $1}'</font>",指定输入分隔符为".",输出第1列
<b><font color="#c41230">OFS</font></b>(Out Field Separator):输出列分隔符,默认"空格"
<b><font color="#662c90">输出</font></b>列分隔符变量:<b><font color="#c41230">OFS</font></b>(Out Field Separator),<br>输出结果时使用,将每一行输出结果分隔成列
格式:"<b><font color="#c41230">-v OFS='分隔符'</font></b>"<br>如:"<font color="#0076b3">awk -v OFS=',' '{print $8,$9}'</font>",<br> 指定输出分隔符为"逗号",输出第8列,第9列,逗号分隔<br>
<b><font color="#c41230">RS</font></b>(Record Separator):输入行分隔符,默认"\n"
<font style=""><b><font color="#662c90">输入</font></b>行分隔符变量:</font><font color="#c41230" style="font-weight: bold;">RS</font>(Row Separator)<br>读取文件时使用,将文本内容,分隔成行
<b><font color="#c41230">ORS</font></b>(Output Record Separator):输出行分隔符,默认"\n"
<b><font color="#662c90">输入</font></b>行分隔符变量:ORS(Row Separator)<br>输出结果时使用,将输出结果行进行分隔
<b><font color="#c41230">FILENAME</font></b>:显示内容对应文件名
如<b><font color="#0076b3">数据来源为“通道”</font></b>,则输出为:"<font color="#c41230"><b>-</b></font>"
<b><font color="#c41230">ARGC</font></b>:命令行参数的<b><font color="#0076b3">个数</font></b>
<b><font color="#c41230">ARGV</font></b>:<b><font color="#0076b3">数组</font></b>,保存的是命令行所给定的<b><font color="#0076b3">各参数。</font></b>所有参数组成的数组(ARGV[0]是awk,<b><font color="#0076b3">'pattern{ action }'</font></b>不是参数)<br>
<b><font color="#c41230">NF</font></b>(Number of Fields):行的列数
列变量
<b><font color="#c41230">$0</font></b>:整行
<b><font color="#c41230">$1</font></b>:第1列<br><b><font color="#c41230">$2</font></b>:第2列<br>......
<b><font color="#c41230">$NF</font></b>:最后1行<br><b><font color="#c41230">$(NF-1)</font></b>:倒数第2行<br>......
自定义变量
<b><font color="#0076b3">参数options</font></b>中定义
<b><font color="#c41230">-v varname=value</font></b>
如:<b><font color="#0076b3">awk -v myVar="myValue" '{print myVar}' file</font></b>
优点:可以引用shell中变量。如:<br><b><font color="#0076b3">echo shellVar = "shell value"<br>awk -v myVar=shellVar '{print myVar}' file</font></b><br>
'Pattern{Action}'中<b><font color="#0076b3">直接使用</font></b>
如:<font color="#0076b3"><b>awk '{myVar="myValue";print myVar}'</b></font><b><font color="#0076b3"> file</font></b>