bash: $RANDOM 不够randomly?

为了小小的测试一个东西,写了一个小脚本,想将ftp取下来的文件随机命名(file.32489, file.324, file.xxxx这样)。

本来用file.$RANDOM 这样的方式生成文件名(在我看来,使用这个内置的bash 变量来达到目的会是个很简单的方法),但结果却不尽如人意:1000次循环跑下来,“取”下来的文件却只有981个,这不是取文件时失败了,而是有重名,导致文件被覆盖了。$RANDOM 的范围是0~32767(bash(1)),循环一千遍就出现19次重复了。。。

于是又费神写了一个复杂点的随机字符生成函数。哈,终于没有重复了!

但后来再一想,有点不对劲,脑子似乎不太灵光。一个$RANDOM 不够随机,两个、三个活着更多不就完了?

file.$RANDOM$RANDOM$RANDOM….