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 处的元素。

相关推荐
葫芦和十三18 小时前
图解 MongoDB 21|选举与 failover:Primary 是怎么选出来的
后端·mongodb·agent
GetcharZp18 小时前
26k Star 开源内网穿透神器 NetBird,一分钟实现全球设备互联!
后端
考虑考虑19 小时前
Mybatis实现批量插入
java·后端·mybatis
咖啡八杯20 小时前
GoF设计模式——中介者模式
java·后端·spring·设计模式
lizhongxuan1 天前
多Agent之间的区别
后端
杨充1 天前
1.面向对象设计思想
后端
IT_陈寒1 天前
Java的Date类又坑了我一次,改用时间戳真香
前端·人工智能·后端
systemPro1 天前
2.6亿条设备数据,历史查询从超时到50ms,我做了什么
后端
要阿尔卑斯吗1 天前
提示词优化启示:为什么“按顺序输出“比“关键度评分“更有效
后端
她的男孩1 天前
后台接口加密别只会 HTTPS,ForgeAdmin 的 RSA + SM4/AES 源码拆解
后端·面试·开源