今晚我一直在为学习 bash 而烦恼,我一直在尝试创建一个随机数序列,该序列使用一个范围内的所有数字并且每个数字只使用一次。因此,输入 1-5 的范围将输出 4-3-5-2-1 或 2-5-1-3-4 等。我被困在这个问题上了。
谢谢!
最佳答案
下面的命令不是 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
关于bash - 在 bash 中生成不重复的随机数序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12550372/