shell语法--数组相关

shell定义一个数组

在 shell 中,可以使用以下语法来定义一个数组:

array_name=(item1 item2 item3 ...)

其中,array_name 是数组的名称,item1、item2、item3 等是数组中的元素,它们之间用空格分隔。例如,以下代码定义了一个名为 my_array 的数组,其中包含三个元素:

my_array=(apple banana orange)

您还可以使用以下语法向数组中添加新元素:

array_name+=(new_item)

例如,以下代码向 my_array 数组中添加了一个名为 pear 的新元素:

my_array+=(pear)

要访问数组中的元素,可以使用以下语法:

${array_name[index]}

其中,index 是元素的索引,从 0 开始计数。例如,以下代码将打印 apple:

echo ${my_array[0]}


shell遍历数组

在 shell 中,您可以使用不同的方法来遍历数组。以下是两种常见的方法:

使用 for 循环遍历数组:

bash 复制代码
my_array=(apple banana orange)

for item in ${my_array[@]}
do
  echo $item
done

上述代码将打印数组中的每个元素,输出如下:

bash 复制代码
apple
banana
orange

使用 C 风格的 for 循环来遍历数组:

bash 复制代码
my_array=(apple banana orange)

for (( i=0; i<${井号my_array[@]}; i++ ))
do
  echo ${my_array[i]}
done

# 需要将"井号"替换为#。 不然hexo生成报错

上述代码将使用索引遍历数组,并打印每个元素,输出如下:

bash 复制代码
apple
banana
orange

在第二种方法中,${井号my_array[@]} 返回数组中元素的个数,(( i=0; i<$井号my_array[@]}; i++ )) 设置了循环的起始值和终止值,并将变量 i 每次增加 1,直到循环结束。${my_array[i]} 返回索引 i 处的元素。

相关推荐
好好研究1 小时前
Spring Boot - Thymeleaf模板引擎
java·spring boot·后端·thymeleaf
爬山算法1 小时前
Hibernate(76)如何在混合持久化环境中使用Hibernate?
java·后端·hibernate
她说..1 小时前
策略模式+工厂模式实现单接口适配多审核节点
java·spring boot·后端·spring·简单工厂模式·策略模式
csdn_aspnet2 小时前
ASP.NET 8 - Cookie 身份验证
后端·asp.net·cookie·.net8
笔画人生2 小时前
Cursor + 蓝耘API:用自然语言完成全栈项目开发
前端·后端
有来技术3 小时前
ASP.NET Core 权限管理系统(RBAC)设计与实现|vue3-element-admin .NET 后端
vue.js·后端·c#·asp.net·.net
qq_12498707533 小时前
基于springboot的林业资源管理系统设计与实现(源码+论文+部署+安装)
java·vue.js·spring boot·后端·spring·毕业设计·计算机毕业设计
shuair3 小时前
springboot整合redisson单机模式
java·spring boot·后端
qq_12498707533 小时前
基于springboot的竞赛团队组建与管理系统的设计与实现(源码+论文+部署+安装)
java·vue.js·spring boot·后端·信息可视化·毕业设计·计算机毕业设计
Dr.Kun4 小时前
【鲲码园PsychoPy】Go/No-go范式
开发语言·后端·golang