千家信息网

AWK数组怎么用

发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,这篇文章主要为大家展示了"AWK数组怎么用",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"AWK数组怎么用"这篇文章吧。AWK 可以使用关联数组这种数据结构
千家信息网最后更新 2024年11月26日AWK数组怎么用

这篇文章主要为大家展示了"AWK数组怎么用",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"AWK数组怎么用"这篇文章吧。

AWK 可以使用关联数组这种数据结构,索引可以是数字或字符串,AWK关联数 组也不需要提前声明其大小,因为它在运行时可以自动的增大或减小。

数组使用的语法格式:

array_name[index]=value
  1. array_name:数组的名称
  2. index:数组索引
  3. value:数组中元素所赋予的值

创建数组

接下来看一下如何创建数组以及如何访问数组元素:

$ awk 'BEGIN {sites["runoob"]="www.runoob.com";sites["google"]="www.google.com"print sites["runoob"] "\n" sites["google"]}'

执行以上命令,输出结果为:

www.runoob.comwww.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 300400 500 600700 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] = 100array[0,1] = 200array[0,2] = 300array[1,0] = 400array[1,1] = 500array[1,2] = 600

在数组上可以执行很多操作,比如,使用 asort 完成数组元素的排序,或者使用 asorti 实现数组索引的排序等等。

以上是"AWK数组怎么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

数组 元素 索引 例子 内容 命令 格式 篇文章 语法 面的 多维 存储 输出 字符 字符串 结果 网站 关联 学习 帮助 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 软件开发报告怎么写 计算机网络技术三级难不难 联想服务器换内存卡 大学生网络安全事例分析 全球软件开发商排名 任天堂账号选择哪个服务器好 淄博仓储库存软件开发 上海九物互联网科技有限公司 自己做服务器储存资料 华为鸿蒙系统服务器在哪 电脑服务器卡怎么解决 网络安全等级保护2下载 网络安全三不依赖的原则 汉邦高科有没有网络安全技术 虚拟网络技术在计算机中代表什么 校园硬核正能量网络安全担当 北京互联网科技公司有哪些 服务器中木马勒索病毒用改ip吗 数据库国赛 深信服安全认证服务器 下列选项中属于软件开发工具的是 软件开发班怎么样 腾讯云服务器关闭安全 红河州公安局网络安全保密记录 2022年网络安全教育 幼儿意识形态网络安全教育教案 股票分析软件开发价格 数据库系统设计方法 驻马店社交电商软件开发 网络安全助理工程师
0