SHELL $RANDOM产生的随机数范围是0到32767

1.使用系统的 $RANDOM 变量

 

  1. fdipzone@ubuntu:~$ echo $RANDOM  
  2. 17617  
fdipzone@ubuntu:~$ echo $RANDOM
17617

$RANDOM 的范围是 [0, 32767]

 

如需要生成超过32767的随机数,可以用以下方法实现。

例:生成400000~500000的随机数

 

  1. #!/bin/bash  
  2.   
  3. function rand(){  
  4.     min=$1  
  5.     max=$(($2-$min+1))  
  6.     num=$(($RANDOM+1000000000)) #增加一个10位的数再求余  
  7.     echo $(($num%$max+$min))  
  8. }  
  9.   
  10. rnd=$(rand 400000 500000)  
  11. echo $rnd  
  12.   
  13. exit 0  
posted @ 2017-12-07 19:55  滴滴滴  阅读(4367)  评论(0)    收藏  举报