我想在循环内增加一个变量k。每个增量为0.025。我尝试使用:
let "k += 0.025"
和
let "$k += 0.025"
和
k += 0.025
以及许多其他变体。有谁知道如何做到这一点?
答案 0 :(得分:9)
你可能正在制作一些巨大的bash杰作,如果没有国王的赎金就无法重写。
或者,这个问题可能会告诉你“给我写 Ruby 或 Python 或 Perl 或 Awk < /强> ”。
答案 1 :(得分:5)
使用整数数学,然后在需要时转换为十进制。
#!/bin/bash
k=25
# Start of loop
#
# Increment variable by 0.025 (times 1000).
#
let k="$k+25"
# Get value as fraction (uses bc).
#
v=$(echo "$k/1000"|bc -l)
# End of loop
#
echo $v
另存为t.sh
,然后:
$ chmod +x t.sh
$ ./t.sh
.05000000000000000000
答案 2 :(得分:4)
#!/bin/sh
k=1.00
incl=0.025
k=`echo $k + $incl | bc`
echo $k
答案 3 :(得分:1)
Bash不处理浮点数学。您需要bc等外部工具的帮助。