如何将起始变量传递给 for 循环,BASH

Ano*_*ist 1 variables bash for-loop

再会,

我想知道如何正确地将变量传递给for循环。语法无关紧要,我只想传递变量并计数二。

问题:

当我写下:

r=0 ; for i in {"$r"..10..2}; do echo "Welcome $i times" ;done
Run Code Online (Sandbox Code Playgroud)

我得到:

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

并不是:

Welcome 0 times
Welcome 2 times
Welcome 4 times
Welcome 6 times
Welcome 8 times
Welcome 10 times
Run Code Online (Sandbox Code Playgroud)

提前感谢您提供任何线索

Dav*_*ica 5

for使用变量作为循环边界的循环的一般格式是:

#!/bin/bash
a=2
b=10
increment=2

for ((i=$a; i<=$b; i+=$increment)); do
    ## <something with $i>
    echo "i: $i"
done
Run Code Online (Sandbox Code Playgroud)

输出:

$ bash forloop.sh
i: 2
i: 4
i: 6
i: 8
i: 10
Run Code Online (Sandbox Code Playgroud)