在bash下,有时需要用到随机数,但是我们怎么获取呢?有如下方法可以使用:

1、通过bash变量获取
[root@vm3 ~]# echo $RANDOM
2417
[root@vm3 ~]# echo $RANDOM
3963
[root@vm3 ~]# RANDOM=3
[root@vm3 ~]# echo $RANDOM
18395
每次引用这个参数时,都会产生一个 0 到 32767 之间的随机整数。可以通过向 RANDOM 赋值来 初始化随机数序列。如果取消了 RANDOM 的定义,它就失去了特殊的意义,即使后来重新定义它

2、通过/dev/random文件获取
[root@vm3 ~]# od -An -N1 -i /dev/random
                    21
[root@vm3 ~]# od -An -N2 -i /dev/random
                 30782
参数:
-An 不使用基数
-N1 读1个字节(输出范围0~255),要是N2就是读2个字节(输出范围0~65535)
-i  等同于 -t dI,设置输出格式为十进制(d)整型(I)

3、通过python语言获取
[root@vm4 ~]# python -c 'import random;print random.random()'
0.314804801351
输出0到1之间的浮点数

4、通过php语言获取
[root@vm3 ~]# php -n -r 'print rand();'
1767146087
输出0到getrandmax()之间的整数

5、通过perl语言获取
[root@vm3 ~]# perl -e 'print rand()'
0.745486555229039
输出0到1之间的浮点数

6、通过ruby语言获取
[root@vm3 ~]# ruby -e 'print rand()'
0.585590225412727
输出0到1之间的浮点数