【问题标题】:generate non-repeating random number sequences in bash在 bash 中生成不重复的随机数序列
【发布时间】:2012-09-23 06:58:38
【问题描述】:

今晚我一直在努力学习 bash,我一直在尝试创建一个随机数序列,它使用一个范围内的所有数字,并且每个数字只使用一次。因此,输入 1-5 的范围将输出 4-3-5-2-1 或 2-5-1-3-4 等。我被困在这个问题上。

谢谢!

【问题讨论】:

  • 只是一个信息说明:您正在寻找的是输入范围的随机排列。

标签: bash random numbers


【解决方案1】:

以下命令并非特定于 bash,但它确实有效

seq 1 5 | shuf

更具体的 bash 子字符串

x=12345
for((i=5;i>0;i--));do
  ((r=RANDOM%i+1))
  echo ${x:r-1:1}
  x=${x:0:r-1}${x:r}
done

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-23
    • 1970-01-01
    • 1970-01-01
    • 2012-03-16
    • 2012-05-27
    相关资源
    最近更新 更多