tomcat-*.sh中如何内存设置部分如何用乘法计算,支持小数点?

问答中心分类: OneinStacktomcat-*.sh中如何内存设置部分如何用乘法计算,支持小数点?
yflwz asked 6 年 ago
let Xms_Mem="${Mem}/2" 和let Xmx_Mem="${Mem}/2"这二个地方如果有用乘法计算应该如何改表达式?如${Mem}乘于0.75,请指教,谢谢!!!

5 Answers
oneinstack answered 6 年 ago

"/"代表除取整数,乘法用"*"试试

yflwz answered 6 年 ago
*号用作乘法不行

oneinstack answered 6 年 ago
let只支持整数运算,小数试试bc命令。

yflwz answered 6 年 ago
[ ${Mem} -le 768 ]
Xms_Mem=`echo | awk -v a=${Mem} -v b=0.7 '{printf("%.0f",a*b)}'`
Xmn_Mem=`echo | awk -v c=${Xms_Mem} -v d=4 '{printf("%.0f",c/d)}'`
Xmx_Mem=`echo | awk -v e=${Xms_Mem} -v '{printf("%.0f",e/3*2)}'`
我现在改成上面的方式,这样不管是乘法还是除法都支持(包括小数点)

oneinstack answered 6 年 ago
方法可以学习下,该应用场景没必要小数点!