Shell 脚本:如何在浮点数字符串之间进行循环?
Shell script: how to make a for loop among float number strings?
在shell脚本中,我想做一个for循环,比如
for(i=0.01;i<=4.0;i=i+0.01)
或
for i in seq(0.01,0.01,4.0)
但是$i
是字符串,不是浮点数
我该怎么做?
谢谢!
shell 不进行浮点运算,您可以使用 awk:
awk 'BEGIN{for(i=0.01;i<=4.0;i=i+0.01) print i}'
0.01
0.02
0.03
0.04
0.05
0.06
0.07
0.08
0.09
0.1
...
...
类似的答案,或者循环整数然后除以 100 输出小数,参见 this answer
for i in $(seq 0.01 0.01 4.0); do echo $i; done
在shell脚本中,我想做一个for循环,比如
for(i=0.01;i<=4.0;i=i+0.01)
或
for i in seq(0.01,0.01,4.0)
但是$i
是字符串,不是浮点数
我该怎么做?
谢谢!
shell 不进行浮点运算,您可以使用 awk:
awk 'BEGIN{for(i=0.01;i<=4.0;i=i+0.01) print i}'
0.01
0.02
0.03
0.04
0.05
0.06
0.07
0.08
0.09
0.1
...
...
类似的答案,或者循环整数然后除以 100 输出小数,参见 this answer
for i in $(seq 0.01 0.01 4.0); do echo $i; done