Arrays 我想按顺序为列出的元素分配编号

Arrays 我想按顺序为列出的元素分配编号,arrays,bash,shell,scripting,Arrays,Bash,Shell,Scripting,在我编写的bash脚本中,我将在列表中一个接一个地列出项目。我想将序列号添加到这些列出的元素的开头 代码是: #!/bin/bash ARRAY=( 'New York' 'Dubai' Istanbul Amsterdam) ELEMENTS=${#ARRAY[@]} for (( i=0;i<$ELEMENTS;i++ )); do echo ${ARRAY[${i}]} done 我想要的输出: 1. New York 2. Dubai 3. Istanbul 4. A

在我编写的bash脚本中,我将在列表中一个接一个地列出项目。我想将序列号添加到这些列出的元素的开头

代码是:

#!/bin/bash

ARRAY=( 'New York' 'Dubai' Istanbul Amsterdam)

ELEMENTS=${#ARRAY[@]}

for (( i=0;i<$ELEMENTS;i++ )); do
   echo ${ARRAY[${i}]}
done
我想要的输出:

1. New York
2. Dubai
3. Istanbul
4. Amsterdam
如何使用bash脚本实现这一点?谢谢

您可以使用

echo "$((i+1)). ${ARRAY[${i}]}"

@Milag我用下面的答案解决了这个问题,谢谢你。你的for循环也可以是:
for I in“${!ARRAY[@]}”
来迭代索引。好的,谢谢你@glennjackman
echo "$((i+1)). ${ARRAY[${i}]}"