如何为正确的数组索引赋值?

时间:2014-12-26 15:52:37

标签: arrays bash

当我想将值分配给数组中的正确索引(bash中的数组)时,是否可能?当我输入一些数字时,我希望这个数字与它的价值位于同一位置。

示例:当我输入数字 25 然后使用命令echo ${array[25]}时,我希望 25

我想将shuf -i 1-49 -n 7 | xargs -n7的数字提供给数组。每个号码都在他的位置上。

感谢您的回答:)

1 个答案:

答案 0 :(得分:1)

你可以循环遍历shuf

的结果
#!/bin/bash
while read i
do
  a[$i]=$i
done < <( shuf -i 1-49 -n 7 )

for i in "${!a[@]}"; do
  printf "%s\t%s\n" "$i" "${a[$i]}"
done