如何循环遍历 bash 中的小数范围?
How to loop through a range of decimal numbers in bash?
我想生成一系列等间距的十进制数。
例如,我想 echo
3.0
和 4.5
之间的所有数字,步骤 0.1
。我试过 $ for i {3.0..4.5..0.1}; do echo $i; done
,但这会出错。
我也试过 $ for i in $(seq 3.0 4.5 0.1); do echo $i; done
但没有任何反应。
for i in {3.0,4.5,0.1}; do echo $i; done
如果您正在寻找以 0.1 步从 3.5 到 4.5 的循环,这会起作用
for x in {35..45}; do
y=`bc <<< "scale=1; $x/10"`
echo $y
done
同0.01步
for x in {350..450}; do
y=`bc <<< "scale=2; $x/100"`
echo $y
done
I also tried $ for i in $(seq 3.0 4.5 0.1); do echo $i; done but nothing happens.
顺序错误:
$ for i in $(seq 3.0 0.1 4.5); do echo $i; done
我想生成一系列等间距的十进制数。
例如,我想 echo
3.0
和 4.5
之间的所有数字,步骤 0.1
。我试过 $ for i {3.0..4.5..0.1}; do echo $i; done
,但这会出错。
我也试过 $ for i in $(seq 3.0 4.5 0.1); do echo $i; done
但没有任何反应。
for i in {3.0,4.5,0.1}; do echo $i; done
如果您正在寻找以 0.1 步从 3.5 到 4.5 的循环,这会起作用
for x in {35..45}; do
y=`bc <<< "scale=1; $x/10"`
echo $y
done
同0.01步
for x in {350..450}; do
y=`bc <<< "scale=2; $x/100"`
echo $y
done
I also tried $ for i in $(seq 3.0 4.5 0.1); do echo $i; done but nothing happens.
顺序错误:
$ for i in $(seq 3.0 0.1 4.5); do echo $i; done