2011-04-26 70 views

回答

7

使用dd从设备获取的数据块。例如。从/dev/urandom得到8个字节:

dd if=/dev/urandom count=1 bs=8 | ... 

然后你可以用od到字节转换为人类可读的形式:

$ dd if=/dev/urandom count=1 bs=8 2>/dev/null | od -t x1 -A n 
b4 bc 2f 59 dd 55 1b 4a 

顺便说一句,如果你只需要随机数在bash, $RANDOM可能是更有益的:

$ echo $RANDOM $RANDOM $RANDOM $RANDOM 
3466 6521 4426 9349 
+1

$ RANDOM更容易,但不如/ dev/urandom – sehe 2011-04-26 22:51:20

+0

那么强大,那么$ RANDOM如何生成? – Marcin 2011-04-27 02:46:36

1

我暗示:

dd if=/dev/urandom count=4 | ... 

或例如尾部在很大程度上依赖于您要使用的数据

要格式化为一个长整型数做什么:

dd if=/dev/urandom bs=1 count=4|od -l 
+0

我想生成十进制随机数。 – abc 2011-04-26 22:19:26