【发布时间】:2016-12-06 13:21:18
【问题描述】:
我需要一个计算基本税的 bash 脚本。 它应该可以由
调用tax.sh 或带有可选参数:tax.sh(资本或帮助)(利率)(持续时间)
我所拥有的是:
re='^-?[0-9]+([.][0-9]+)?$'
echo "capital: "
read capital
if ![[ $capital =~ $re ]] ; then
echo "invalid capital!" >&2; exit 1
fi
echo "rate: "
read rate
if ![[ $rate=~ $re ]] ; then
echo "invalid rate!" >&2; exit 1
fi
echo "duration: "
read duration
if ![[ $duration=~ $re ]] ; then
echo "invalid duration!" >&2; exit 1
fi
echo "the capital after "$duration" years is: "
echo "scale=5;($capital*($rate/100)*$duration)+$capital" | bc
我不知道如何实现参数或正确计算:/ 计算总是比它应该的小一点。
【问题讨论】:
-
您的问题是什么?您的脚本似乎没问题,除了少数语法错误实例在
![[ $rate=~ $re ]] ;到! [[ $rate =~ $re ]] ;中留下空格 -
“计算总是比它应该的小一点。”。例子?
-
例如5000 1 5 应该是 5255.05 但在 shell 脚本中是 5250。第二个问题是我如何实现参数
-
@DimitriStrogatrov:
$tax变量在计算中做了什么?之前没有被读取或设置过? -
抱歉,这实际上是我的打字错误...我的意思是 $rate 那里。从腻子复制时发生...
标签: bash shell parameters tax