前端之家收集整理的这篇文章主要介绍了
在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