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 1
just 1
。