AWK 可以使用关联数组这种数据结构,索引可以是数字或字符串,AWK关联数 组也不需要提前声明其大小,因为它在运行时可以自动的增大或减小,下面为大家详细讲解一下AWK数组。
站在用户的角度思考问题,与客户深入沟通,找到天宁网站设计与天宁网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站设计、成都网站制作、企业官网、英文网站、手机端网站、网站推广、域名与空间、虚拟空间、企业邮箱。业务覆盖天宁地区。
array_name[index]=value
接下来看一下如何创建数组以及如何访问数组元素:
$ awk 'BEGIN { sites["runoob"]="www.runoob.com"; sites["google"]="www.google.com" print sites["runoob"] "\n" sites["google"] }'
执行以上命令,输出结果为:
www.runoob.com
www.google.com
在上面的例子中,我们定义了一个站点(sites)数组,该数组的索引为网站英文简称,值为网站访问地址。可以使用如下格式访问数组元素:
array_name[index]
我们可以使用 delete 语句来删除数组元素,语法格式如下:
delete array_name[index
下面的例子中,数组中的 google 元素被删除(删除命令没有输出):
$ awk 'BEGIN { sites["runoob"]="www.runoob.com"; sites["google"]="www.google.com" delete sites["google"]; print fruits["google"] }'
AWK 本身不支持多维数组,不过我们可以很容易地使用一维数组模拟实现多维数组。
如下示例为一个 3×3 的三维数组:
100 200 300
400 500 600
700 800 900
以上实例中,array0 存储 100,array0 存储 200 ,依次类推。为了在 array0 处存储 100, 我们可以使用如下语法: array[“0,0”] = 100。
我们使用了 0,0 作为索引,但是这并不是两个索引值。事实上,它是一个字符串索引 0,0。
下面是模拟二维数组的例子:
$ awk 'BEGIN { array["0,0"] = 100; array["0,1"] = 200; array["0,2"] = 300; array["1,0"] = 400; array["1,1"] = 500; array["1,2"] = 600; # 输出数组元素 print "array[0,0] = " array["0,0"]; print "array[0,1] = " array["0,1"]; print "array[0,2] = " array["0,2"]; print "array[1,0] = " array["1,0"]; print "array[1,1] = " array["1,1"]; print "array[1,2] = " array["1,2"]; }'
执行上面的命令可以得到如下结果:
array[0,0] = 100
array[0,1] = 200
array[0,2] = 300
array[1,0] = 400
array[1,1] = 500
array[1,2] = 600
在数组上可以执行很多操作,比如,使用 asort 完成数组元素的排序,或者使用 asorti 实现数组索引的排序等等。
本文名称:详解AWK数组
链接URL:http://www.shufengxianlan.com/qtweb/news35/105335.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联