在unix-shell中生成一个随机文件名
你们一直抱怨这个地方,但是你们却没有勇气走出这里
使用系统的 $RANDOM 变量
$RANDOM
的范围是 [0, 32767]
1 | echo $RANDOM |
自建函数
1 | #!/bin/bash |
使用date +%s%N
生成1-50的随机数
1 | #!/bin/bash |
使用/dev/random 和 /dev/urandom
假设你在一个linux,以下应该工作:
1 | cat /dev/urandom | tr -cd 'a-f0-9' | head -c 32 |
这只是伪随机的,如果你的系统运行低熵,但(在linux)保证终止。如果你需要真正随机的数据,cat / dev / random代替/ dev / urandom。这个更改将使你的代码块,直到足够的熵可用来产生真正的随机输出,所以它可能会减慢你的代码。对于大多数用途,/ dev / urandom的输出是充分随机的。
如果在OS X或其他BSD上,您需要将其修改为以下内容:
1 | cat /dev/urandom | env LC_CTYPE=C tr -cd 'a-f0-9' | head -c 32 |
使用linux uuid
uuid 全称是通用唯一识别码,格式包含32个16进制数字,以’-‘连接号分为5段。形式为8-4-4-4-12 的32个字符。
1 | cat /proc/sys/kernel/random/uuid |
https://codeday.me/bug/20170816/53801.html
https://blog.csdn.net/fdipzone/article/details/24329523