1

我如何在 bash shell 脚本中定义一个 for 循环以获得从 0.50 到 1.00 的十进制值(即 0.50 0.51 等)我发现了这样的东西:

for I in $(seq 50 100)
do
    echo $I 10 | awk '{print $1/$2}'    

done

但它只是显示值,我需要将它分配给一个变量。我该怎么做?

4

4 回答 4

6

无需外部命令:

for i in {50..100} ; do
    j=0.$i
    (( i==100 )) && j=1
    echo $j
done
于 2013-06-13T14:07:10.257 回答
0
for I in $(seq 50 100)
do
    J=`echo $I 10 | awk '{print $1/$2}'`
    echo $J
done
于 2013-06-13T14:02:51.023 回答
0

好的,这就是我所做的

i=$(echo "scale=2;0.50" | bc)

echo $i

for a in {50..100};do
echo $i
i=$(echo "scale=2;$i+0.01" | bc)
done

scale = 你想要的小数位数;(你想要做的操作)你可以 / * + - ...

我的脚本的输出是

.50 .50 .51 .52 .53 .54 .55 .56 .57 .58 .59 .60 .61 .62 .63 .64 .65 .66 .67 .68 .69 ... 1.00

于 2013-06-13T14:31:54.960 回答
0
序列--版本
seq (GNU coreutils) 8.4
...

序列 0.5 .01 1.0
0.50
0.51
0.52
...
1.00
于 2013-06-13T15:16:36.027 回答