shell 脚本如何提取整数部分

shell脚本中,是否没办法进行小数的操作?现在我设置了变量SPEED=1.3现在要得到这个数的1024倍SPEED=`expr$SPEED\*1024`echo$SPE... shell脚本中,是否没办法进行小数的操作?现在我 设置了变量 SPEED=1.3
现在要得到这个数的1024倍
SPEED=`expr $SPEED \* 1024`
echo $SPEED

运行之后,总是会报non-numericl 的错误

如果没办法操作小数的运算,我就想提取这个变量的整数部分,然后*1024,如何操作?
展开
 我来答
948242092
推荐于2018-04-12 · TA获得超过185个赞
知道小有建树答主
回答量:222
采纳率:0%
帮助的人:152万
展开全部
[root@localhost zhaoru]# b.sh shell.sh
1331.2
[root@localhost zhaoru]# cat shell.sh
#!/bin/bash
a=1.3
speed=`echo ${a}*1024 | bc`
echo $speed
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
只爱度
2018-04-10 · TA获得超过560个赞
知道小有建树答主
回答量:460
采纳率:100%
帮助的人:96.6万
展开全部

其实楼上的回答没毛病,只是没说到取整的方法。

关于取整,可以用cut命令取出小数点前面的数字(字符串):

echo "1.3" | cut -f1 -d"."

或者用echo命令:

SPEED=1.3
echo ${SPEED%%.*}

或者用awk命令:

echo "1.3" | awk -F"." '{print $1}'

或者用bc命令:

echo "1.3/1" | bc

或者用sed命令:

echo "1.3" | sed "s/\..*$//"

欢迎补充、指出错误!!!

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式