我正在AIX中编写一个脚本,我正在使用如下所示的FOR循环:
myNumber=<value extracted from a line>
echo $myNumber
tmp=$(($myNumber))
echo $queue
for i in {1..$tmp}
do
//Something
done
执行脚本时,我收到以下错误消息。在我的情况下,myNumber
的值为344。
{1..344}
无效的讯息范围参数'{1..344} .. {1..344}'
似乎字符没有转换为数字。帮助人
答案 0 :(得分:2)
{1..$tmp}
后,需要扩展 tmp
。
您可以使用展开{1..$tmp}
的结果调用shell。假设bash
,请替换:
for i in {1..$tmp}
使用:
for f in $(bash -c "echo {1..$tmp}")