awk 数组与函数

------ ## 一:数组 ​ `awk`可以使用关联数组这种数据结构,索引可以是数字或字符串。 ​ `awk`关联数 组也不需要提前声明其大小,因为它在运行时可以自动的增大或减小。 ### 1. 语法格式 ```shell array_name[index]=value ``` - array_name:数组的名称 - index:数组索引 - value:数组中元素所赋予的值 ### 2. 创建数组 ​ 定义了一个站点(sites)数组,该数组的索引为网站英文简称,值为网站访问地址。 ```bash [root@wxin ~]# awk 'BEGIN { sites["qfedu"]="www.qfedu.com"; sites["google"]="www.google.com" print sites["qfedu"] "\n" sites["google"] }' www.qfedu.com www.google.com ``` ### 3. 访问数组 访问数组元素语法格式 ```shell array_name[index] ``` 访问数组元素 ```bash [root@wxin ~]# awk -F: '{username[++i]=$1} END{print username[1]}' /etc/passwd root [root@wxin ~]# awk -F: '{username[i++]=$1} END{print username[1]}' /etc/passwd bin [root@wxin ~]# awk -F: '{username[i++]=$1} END{print username[0]}' /etc/passwd root ``` 按元数个数遍历 ```bash [root@wxin ~]# awk -F: '{username[x++]=$1} END{for(i=0;iv2?var=v1:var=v2 return var } BEGIN{a=3;b=2;print max(a,b)} awk –f fun.awk ```