我想将特定范围内获得随机数:解释这一BASH表达
random_number=$((RANDOM % $RANGE))
这给了我一个错误
")syntax error: invalid arithmetic operator (error token is "
我想我不能在这个表达式中使用$范围内,但为什么? 我该如何重写?
我想将特定范围内获得随机数:解释这一BASH表达
random_number=$((RANDOM % $RANGE))
这给了我一个错误
")syntax error: invalid arithmetic operator (error token is "
我想我不能在这个表达式中使用$范围内,但为什么? 我该如何重写?
是不是这样的:
random_number = $(($RANDOM % $RANGE))
$
前RANDOM
如果不起作用此post:
:建议:
shuf -i 2000-65000 -n 1
UPDATE
改写这种情况的方法如下:
random_number = $(($RANDOM % some_numeric_value))
它看起来像你的变量RANGE
可以用回车或别的东西所污染。
如果您使用的是Windows,可能会有一个\r
从EOL的错误配置,你可以试试这个:
random_number = $((RANDOM % $(tr -d '\r' <<< "$RANGE")))
你或许应该看到:http://stackoverflow.com/questions/ 673016/bash - 如何在算术表达式中进行可变扩展 – zakinster 2013-04-29 12:00:10
试试这个: http://stackoverflow.com/questions/2556190/random-number-from-a-range -in-bash-script – girardengo 2013-04-29 12:20:39
'='是否真的被空白包围? – Jens 2013-04-29 12:27:35