【发布时间】:2010-12-22 10:30:02
【问题描述】:
我试图弄清楚如何在 tcsh 中使用 /dev/random 和 /dev/urandom 生成随机数。在我执行 head -c 1 /dev/random 之后,我得到一个随机字节。如何把这个字节变成实际的数字?
【问题讨论】:
我试图弄清楚如何在 tcsh 中使用 /dev/random 和 /dev/urandom 生成随机数。在我执行 head -c 1 /dev/random 之后,我得到一个随机字节。如何把这个字节变成实际的数字?
【问题讨论】:
对于提前重定向您的问题,我深表歉意,但尽管没有将它用于您的脚本,但如果您有 bash,这里会很方便:
bash -c 'echo $RANDOM'
将返回一个随机整数。因此,您可以使用:
RANDOM=`bash -c 'echo $RANDOM'`
从一个 tcsh 脚本中实现相同的变量。
【讨论】:
$ head -c 1 /dev/urandom | od -t u1 | cut -c9-
这会给你一个介于 0 到 255 之间的随机整数。
【讨论】:
这适用于 csh OS X -> 生成 2 到 10 之间的 1 个数字并将其分配给随机数:
set random = `jot -r 1 2 10`
echo "random number $random was generated"
【讨论】: