相关疑难解决方法(0)

评估 for 循环时出错

我正在编写一个接受两个参数的脚本:

#! /bin/bash

eval  for i in {$1..$2}; do echo $i;  done
Run Code Online (Sandbox Code Playgroud)

我运行它:

$ ./myscript 0002 0010
 syntax error near unexpected token `do'
Run Code Online (Sandbox Code Playgroud)

为什么是错误?

我认为这可能是因为循环应该分组。但是通过替换eval for i in {$1..$2}; do echo $i; doneeval { for i in {$1..$2}; do echo $i; done; },错误仍然存​​在。

注意:我希望在大括号扩展之前使用eval. 我的示例所需的输出是0002 0003 0004 0005 0006 0007 0008 0009 0010. (请参阅在大括号扩展之前执行参数扩展?

shell bash eval

1
推荐指数
1
解决办法
2655
查看次数

标签 统计

bash ×1

eval ×1

shell ×1