变量在范围内的 for 循环将不起作用

Jak*_*ink 3 bash shell

所以我正在编写一个 for 循环并遇到一些错误,以了解我写的错误

    #! /bin/bash
    b=${1:- 10}
    echo $b
    for i in {0..$b}
    do
            echo "$i"
    done
Run Code Online (Sandbox Code Playgroud)

所以如果我跑./forloop.sh 10

我明白了

    10
    {0..10}
Run Code Online (Sandbox Code Playgroud)

当我有一个变量作为第二个参数时,为什么范围不起作用?

FDi*_*off 5

Bash 并没有扩大范围。用这个代替。

for (( i=0; i<=$b; i++)) 
Run Code Online (Sandbox Code Playgroud)