This question already has answers here:
How do I iterate over a range of numbers defined by variables in Bash?

(20个答案)


4年前关闭。




我已经开始在bash中编写一个Brainfuck编译器。
“编译器”会随意翻译代码以使用gcc进行编译。
问题是,当我尝试运行它时,它会显示以下错误:
$ ./compiler test.bf
./compiler: Zeile 111: src: {0..45}: Syntax Fehler: Operator erwartet. (Fehlerverursachendes Zeichen ist \"{0..45}\").

(用英语讲:
$ ./compiler test.bf
./compiler: Line 111: src: {0..45}: Syntax Error: Operator excepted. (Causal Error Char is \"{0..45}\").

)

正如我可能理解的那样,它说第111行存在故障:
...
for i in {0..${#src}}        # line 109
do                           # line 110
    case ${src:$i:1} in      # line 111
...

(这是完整的code)

但是我没看到。

如果错误是for循环的原因,您能告诉我如何在python中制作一个for循环:
for i in range(15):
    ...

提前致谢

最佳答案

使用C风格的for循环:

for ((i=0; i < ${#src}; i++)); do

关于bash - `for`循环中缺少运算符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38337535/

10-11 09:25
查看更多