-
利用Bash內建變數$RANDOM
在Bash裡面,有一個內建的變數,可以用來產生亂數:
$RANDOM
使用起來很簡單,用echo 叫出來即可:
$ echo $RANDOM |
寫一個簡單的程式,自動產生三個亂數:
$ for i in {1..3}; do echo $RANDOM; done |
$RANDOM 所產生的亂數介於0到32767之間,詳細說明可參考這裡。
如果你要的亂數不在這個範圍,可以利用下列方法來產生。以下的函數可以回傳介於兩個數中間的亂數(簡化起見,沒有太多的錯誤檢查,請確定第二個數大於第一個數)
function random_range() |
執行結果如下:
$ random_range 10 |
-
利用特殊檔案/dev/urandom
Linux有兩個特殊的檔案:/dev/random與/dev/urandom,用來提供kernel產生亂數之用。其中 urandom適合一般使用。
以下這個命令利用od這個命令來產生0~32767的變數(16個bit):
$ od -vAn -N2 -i /dev/urandom |
而這個命令可以產生32個bit的變數,範圍在0~2147483645
$ od -vAn -N4 -tu4 /dev/urandom |
留言列表