在unix shell中生成一个随机文件名

前端之家收集整理的这篇文章主要介绍了在unix shell中生成一个随机文件名前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在unix shell(说tcshell)中生成一个随机文件名。文件名应包含随机的32个十六进制字母,例如:
c7fdfc8f409c548a10a0a89a791417c5

(我将添加任何是必要的)。关键是只能在shell中做而不使用程序。

假设你在一个linux,以下应该工作:
cat /dev/urandom | tr -cd 'a-f0-9' | head -c 32

这只是伪随机的,如果你的系统运行低熵,但(在linux)保证终止。如果你需要真正随机的数据,cat / dev / random代替/ dev / urandom。这个更改将使你的代码块,直到足够的熵可用来产生真正的随机输出,所以它可能会减慢你的代码。对于大多数用途,/ dev / urandom的输出是充分随机的。

如果在OS X或其他BSD上,您需要将其修改为以下内容

cat /dev/urandom | env LC_CTYPE=C tr -cd 'a-f0-9' | head -c 32

猜你在找的Bash相关文章