Linux命令行$ {RANDOM:0:3}

时间:2014-03-12 21:14:05

标签: linux

我一直在阅读关于Linux命令行的内容并且遇到过这个问题:

$ {RANDOM:0:3}

这应该创建4个随机数,但有时它只会产生3个,这有什么理由吗?此外,我只参与了Python,所以我不确定为什么这个命令在开始时需要$符号。

任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:2)

您的假设是 false ,(实现目标的方式完全错误)这是应该“创建”4随机数,但只显示0到32767之间整数的3个第一位数(小整数)。如果整数小于100或10,则第二个和第三个可能会丢失!

如果您希望从命令行获取pseudo random整数,(如原始POST中所述)是一个好方法:

 python -c 'import random; print(random.randint(0, 68))'

(0到68之间)

答案 1 :(得分:1)

${parameter:offset:length}parameter开始,从offset开始,length个字符长。因此,您的代码会生成一个随机数,并取其前三位数。

它无法生成4个字符,但很容易产生2个或1个:如果随机数小于100或小于10。