将浮动从awk传递给bash

时间:2014-11-21 23:16:46

标签: bash awk

我需要将一个循环的非整数计数器值添加到另一个循环的计数器中。如下:

我有两个循环,如:

numi=$(awk 'BEGIN{for(i=0;i<=.4;i+=0.2)print i}')
numj=$(awk 'BEGIN{for(j=.1;j<=1;i+=0.3)print j}')
for i in $numi
do
for j in $numj   
do

***然后在这里我想改变j例如。到j + i并且做等等但是 问题是bash不喜欢浮动而我找不到办法 传递浮点值。因为我正在运行另一个软件 循环并使用该值来提供我必须在bash中执行的软件 或以某种方式将值传递给bash。

2 个答案:

答案 0 :(得分:0)

  

j + i并且做等等但问题是bash不喜欢float

如果您关注这个问题,请参阅以下示例是否有帮助:

$ bc<<<'3.5+1'
4.5

答案 1 :(得分:0)

for i in $(seq 0 .2 .4)
do
  for j in $(seq .1 .3 1)
  do
    j_and_i=$(($i+$j))
    echo $j_and_i
  done
done

$()构造在括号内执行命令并将结果替换为您的行。 seq命令打印一系列数字。在这些情况下,它会使用FIRST,INCREMENT和LAST值。 seq .1 .3 1导致&#34; 0.1 0.4 0.7 1.0&#34;。

$(())构造做数学。例如,$((1+1))为2。