首页 > 技术文章 > bash的RANDOM变量生成的是真正的随机数吗

luobosong 2014-08-20 21:29 原文


static void seedrand () { struct timeval tv; gettimeofday (&tv, NULL); sbrand (tv.tv_sec ^ tv.tv_usec ^ getpid ()); }

上述是bash中生成随机数的代码,处理是非常的简单,秒 (tv.tv_sec) 和微秒 (tv.tv_usec) 和进程 ID 的位进行异或操作来生成随机数。

由此生成的RANDOM变量是伪随机数,而且和伪随机数生成器相比,是采用非常简单的算法生成的。

译至:http://devnull.synergy-marketing.co.jp/2013/12/bash-random-number/

只是翻译了其中的一小部分。但是也是最终的结论。

推荐阅读