【问题标题】:Accessing array index variable from bash shell script loop?从 bash shell 脚本循环访问数组索引变量?
【发布时间】:2016-08-16 18:59:17
【问题描述】:

我想在我的 bash shell 脚本中循环遍历数组时访问数组索引变量。

我的脚本.sh
#!/bin/bash
A=('foo' 'bar' 'baz' 'bat')
for i in ${A[*]}; do
  echo $i
done
实际结果
foo
bar
baz
bat
期望的结果
0
1
2
3

如何更改我的脚本以实现此目的?

【问题讨论】:

    标签: arrays bash shell loops


    【解决方案1】:

    您可以使用间接引用语法 (since Bash 3) 循环索引:

    #!/bin/bash
    
    A=('foo' 'bar' 'baz' 'bat')
    for i in ${!A[*]}; do # replace ${A[*]} with ${!A[*]}
      echo $i
    done
    

    更多:How to iterate over associative arrays in Bash

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-06-28
      • 2020-06-09
      • 2021-04-07
      • 1970-01-01
      • 1970-01-01
      • 2020-02-19
      • 1970-01-01
      • 2013-09-17
      相关资源
      最近更新 更多