如何在Ubuntu或任何*nix系统上使用
我尝试过了,但是它显示权限被拒绝。 注意:我也尝试以root身份运行。
/dev/(u)random
?我尝试过了,但是它显示权限被拒绝。 注意:我也尝试以root身份运行。
/dev/(u)random
sudo /dev/(u)random
sudo -s; /dev/(u)random
dd if=/dev/urandom of=~/urandom_test count=4 bs=1024
cat /dev/urandom > ~/urandom_test2
head -30 /dev/urandom > ~/urandom_test3
head -30 /dev/urandom
将给你30行随机字节。这些行的长度肯定是随机的。如果你还不相信,试着在输出文件上运行wc -l
命令。 - aychedee/dev/urandom
在每次 read()
操作中限制为32 MiB,并且一旦 /dev/urandom
生成了这32 MiB的数据,dd
将不会再尝试读取更多。因此,您需要使用 iflag=fullblock
参数来调用 dd
命令。详见 dd is producing a 32 MB random file instead of 1 GB。 - Sergiy Kolodyazhnyy如果您需要一定数量的随机字节,请从/dev/urandom
中读取相应数量的字节。
它是一个“特殊文件”,用于从中读取随机数的文件。
使用cat
从/dev/urandom
中读取是一个不好的主意,因为它会尝试读取/dev/urandom
直到结束 - 但它没有结束。
您可以使用head
。但要注意按字节读取,而不是按行读取 - 因为行可能会被随机的换行字节分隔开。
因此,要将30个随机字节读入文件random.bytes
中,请使用:
head -c 30 /dev/urandom > random.bytes
od -d /dev/random
/dev/urandom
更可取。 - Josh Friedlanderdd if=/dev/urandom count=1 bs=128 | sha512sum
RANDOM
来生成随机正整数:echo $RANDOM
,以及使用程序shuf
来生成随机排列,例如按随机顺序播放播放列表中的歌曲。 - sudodus