全国信誉第一的网投平台,19年企业互联网解决经验,专业网站开发、移动端开发、微信端开发、小程序开发!
重庆网络推广公司

shell教程4:数组

作者:全国信誉第一的网投平台小徐 发布时间:2023-07-10 浏览:11283 赞(1111 收藏 评论(0)

数组中可以存放多个值。Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与 PHP 类似)。

与大部分编程语言类似,数组元素的下标由 0 开始。

Shell 数组用括号来表示,元素用"空格"符号分割开,语法格式如下:

array_name=(value1 value2 ... valuen)

实例

创建一个简单的数组 my_array

实例

#!/bin/bash
# author:菜鸟教程
# url:www.runoob.com

my_array=(A B "C" D)

我们也可以使用数字下标来定义数组:

实例

array_name[0]=value0
array_name[1]=value1
array_name[2]=value2

读取数组

读取数组元素值的一般格式是:

${array_name[index]}

关联数组

Bash 支持关联数组,可以使用任意的字符串、或者整数作为下标来访问数组元素。

关联数组使用 declare 命令来声明,语法格式如下:

declare -A array_name

-A 选项就是用于声明一个关联数组。

关联数组的键是唯一的。

以下实例我们创建一个关联数组 site,并创建不同的键值:

实例

declare -A site=(["google"]="www.google.com" ["runoob"]="www.runoob.com" ["taobao"]="www.taobao.com")

我们也可以先声明一个关联数组,然后再设置键和值:

实例

declare -A site
site["google"]="www.google.com"
site["runoob"]="www.runoob.com"
site["taobao"]="www.taobao.com"

也可以在定义的同时赋值:

访问关联数组元素可以使用指定的键,格式如下:

array_name["index"]

获取数组中的所有元素

使用 @ 或 * 可以获取数组中的所有元素,例如:

实例

#!/bin/bash
# author:菜鸟教程
# url:www.runoob.com

my_array[0]=A
my_array[1]=B
my_array[2]=C
my_array[3]=D

echo "数组的元素为: ${my_array[*]}"
echo "数组的元素为: ${my_array[@]}"

执行脚本,输出结果如下所示:

$ chmod +x test.sh 
$ ./test.sh数组的元素为: A B C D数组的元素为: A B C D

在数组前加一个感叹号 ! 可以获取数组的所有键,例如:

实例

declare -A site
site["google"]="www.google.com"
site["runoob"]="www.runoob.com"
site["taobao"]="www.taobao.com"

echo "数组的键为: ${!site[*]}"
echo "数组的键为: ${!site[@]}"

执行脚本,输出结果如下所示:

数组的键为: google runoob taobao数组的键为: google runoob taobao

获取数组的长度

获取数组长度的方法与获取字符串长度的方法相同,例如:

实例

#!/bin/bash
# author:菜鸟教程
# url:www.runoob.com

my_array[0]=A
my_array[1]=B
my_array[2]=C
my_array[3]=D

echo "数组元素个数为: ${#my_array[*]}"
echo "数组元素个数为: ${#my_array[@]}"

执行脚本,输出结果如下所示:

$ chmod +x test.sh 
$ ./test.sh数组元素个数为: 4数组元素个数为: 4

—————————————————————————————————————————————————————

        全国信誉第一的网投平台项目从2004年开始为各行各业提供互联网发展解决方案,专业从事网站、小程序、微信公众号、APP、电商平台、系统等互联网平台开发,帮助企业实现从传统行业到互联网的完美转型。截止目前,全国信誉第一的网投平台合作的企业遍布全国各地,19年的开发经验和完善的售后服务体系获得合作客户的高度认可!

关注全国信誉第一的网投平台官方公众号,即可获取粉丝专享福利!

全国信誉第一的网投平台公众号二维码.jpg

网友留言评论
我要评论
评论

欢迎广大用户为此页面进行评价,评价成功将获得积分奖励!

  • 赞(0
    踩(0
重庆网站定制建设
  • 网投十大信誉可靠平台平台
  • 网投十大信誉可靠平台公司
  • 重庆网络推广公司哪家好
  • 重庆APP制作公司
版权所有 ©2005-2023 重庆市渝中区圣灵科技信息有限公司 渝ICP备16004600号-14 渝公网安备50010802001420号 电子营业执照
重庆公众号制作哪家好
二维码
联系客服 重庆商城网站建设