数组 – 从bash数组中提取x个随机值

前端之家收集整理的这篇文章主要介绍了数组 – 从bash数组中提取x个随机值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在 Bash中有一个数组,说它包含数字{1,2,3,4,5}.我想随机提取一些这些数字,这样相同的数字就不会被提取两次.

基本上,如果我想从数组中提取3个数字,我想要的结果如:{3,1}或{5,4}而不是{1,1,3}或{2,5,2} .

我尝试删除元素,因为我提取它们,但它总是似乎搞砸了.有人可以帮忙吗?

决定写一个答案,因为我找到了shuf的–input-range选项,结果很方便:
N=3
ARRAY=( zero one two three four five )

for index in $(shuf --input-range=0-$(( ${#ARRAY[*]} - 1 )) -n ${N})
do
    echo ${ARRAY[$index]}
done
原文链接:https://www.f2er.com/bash/384477.html

猜你在找的Bash相关文章