linux shell 產生隨機數

2021-10-05 10:51:45 字數 1668 閱讀 4929

bash預設有乙個$random的變數, 預設範圍是0~32767.

使用set|grep random檢視上一次產生的隨機數

[root@server shell02]# echo $random

15832

[root@server shell02]# set |grep random

random=15832

[root@server shell02]#

產生0~1之間的隨機數

[root@server shell02]# echo $[$random%2]

0[root@server shell02]# echo $[$random%2]

0[root@server shell02]# echo $[$random%2]

1

產生0~2的隨機數

[root@server shell02]# echo $[$random%3]

1[root@server shell02]# echo $[$random%3]

2[root@server shell02]# echo $[$random%3]

1[root@server shell02]# echo $[$random%3]

2[root@server shell02]#

產生1~2之間的隨機數

[root@server shell02]# echo $[$random%2+1]

1[root@server shell02]# echo $[$random%2+1]

2[root@server shell02]# echo $[$random%2+1]

1[root@server shell02]# echo $[$random%2+1]

2

產生50~100之間的隨機數

[root@server shell02]# echo $[$random%51+50]

63[root@server shell02]# echo $[$random%51+50]

90[root@server shell02]# echo $[$random%51+50]

77[root@server shell02]# echo $[$random%51+50]

88

產生三位數的隨機數

[root@server shell02]# echo $[$random%900+100]

713[root@server shell02]# echo $[$random%900+100]

686[root@server shell02]# echo $[$random%900+100]

474[root@server shell02]# echo $[$random%900+100]

202

產生隨機字元

echo $random |md5sum

5b3f8b0ae256f1b148f08f351f6326c0

產生隨機字元第1到6位

echo $random |md5sum |cut -c 1-6

78c8f7

產生隨機數

先說明一下rand,這個函式用來產生偽隨機數。比如,產生1000的兩個隨機數,產生的兩個一般上是不同的,但如果要產生80個100以內的隨機數,僅用rand函式就不夠。因為產生80個100以內的隨機數,至少有兩個數相等的概率太大了 srand函式,並不能使產生的隨機數完全不同。你可以執行以下這串 in...

隨機數產生

c c 中取隨機數 在計算機中並沒有乙個真正的隨機數發生器,但是可以做到使產生的數字重複率很低,這樣看起來好象是真正的隨機數,實現這一功能的程式叫偽隨機數發生器。有關如何產生隨機數的理論有許多,如果要詳細地討論,需要厚厚的一本書的篇幅。不管用什麼方法實現隨機數發生器,都必須給它提供乙個名為 種子 的...

產生隨機數

一 normrnd r normrnd mu,sigma r normrnd mu,sigma,m,n,r normrnd mu,sigma,m,n,mu sigma可以是向量或矩陣 二者同為矩陣時size要相同 但必須和r的size相同 行 列 r的size可以不指定,也可以用m,n指定 n1 n...