对于有读取值的情况

对于有读取值的情况

read var number由(我们输入 5)和分配的数字的最终值有何number=5不同?我正在做这个为了环形:

read var number
#number=5
factorial=1
i=1
for i in `seq 1 $number`
do
        let factorial=factorial*i
done
echo $factorial

当我注意到如果数字具有读取分配的值而不是直接分配时,它不会进入我的for。我猜这是因为数据类型。

答案1

如果将第一行更改为

read number

你会得到你正在寻找的行为。

read var number

读取两个值并将它们存储在名为var和 的变量中number。如果您只输入一个值,则seq 1 $number扩展为seq 1just 1

相关内容