0

我在 bash 中创建一个脚本来调用一个命令 100 次,每次都改变一个浮点参数。我需要用 0.01、0.02、0.03 到 0.5 来调用它。由于我无法在条件或步骤中使用浮点数创建循环,因此我不确定该怎么做。我尝试执行从 1 到 50 的循环,然后将数字除以 100,将其转换为浮点数,然后用它调用命令,然后是命令(基本上我在调用 Weka,数字对应于置信区间)无法正确识别参数,所以也许我使用了错误的数据类型。

提前致谢!帕特里西奥

4

3 回答 3

8
for i in `seq 0.01 0.01 0.5`; do  echo "called with $i" ; done

这将创建一个 0.01 到 0.5 的序列,增量为 0.01。所以echo用你需要的电话替换。

于 2013-05-16T12:29:01.263 回答
0

如果你真的不能使用abasu(+1)提出的解决方案,你可以尝试这样的事情:

for i in `seq 1 50`; do
  n=$(echo $i | awk '{printf "%.2f", $1 / 100}')
  echo $n
done

或像这样:

for i in `seq 1 50`; do
  n=$(printf "0.%02d" $i)
  echo $n
done
于 2013-05-16T12:36:56.137 回答
0
for i in $(seq 0.01 0.01 0.5);do
...
done
于 2018-08-08T10:05:36.493 回答