通常,我可以使用以下表达式将bash中的变量定义为数字
var='3'
我如何将变量与随机值相关联,例如从1到6,每次都可以在for循环中分配:
for var ...; do
print $var
done
假设在每次迭代中,var应该从1到6中随机选择。
我不确定你的问题是否是关于生成随机数
$ echo $(( RANDOM % 6 + 1 ))
4 # results may vary
或者得到一系列随机数。C风格的for
循环可能是最简单的。
# Roll a 6-sided dice 5 times.
for ((n=0; var=RANDOM%6+1, n<5; n++)); do
echo $var
done
第二个表达式使用,
运算符,以便在每次循环迭代开始之前将两个var
都赋值给。
(当然,没有太多理由这样写循环。要清楚,把赋值放在正文的顶部。
for ((n=0; n < 5; n++)); do
var=$((RANDOM%6 + 1))
echo $var
done
)
实际上不需要for loop
,您可以使用RANDOM
。如果我们把你的例子考虑在内;要创建1到6之间的随机数,可以使用以下内容;
$(( ( $RANDOM % 6 ) + 1))
你可以试试;
random_number=$(( ( $RANDOM % 6 ) + 1)); echo $random_number