shell 脚本里面从一个文本里面读出一个数字,如何转换成整数?我需要用这个数字进行加减乘除

2024-12-22 21:31:35
推荐回答(3个)
回答1:

可以参考下面几种方法:

法一:

echo ${var%.*} #这个是直接去除小数点及后面所有内容,只用于bash

法二:

echo $var | awk -F. '{print $1}' #以小数点为分隔符取第一个字段

法三:

echo $var | awk '{print int($0)}' #awk中可直接使用C函数取整

扩展资料:

shell脚本

shell script是利用shell的功能所写的一个程序,这个程序是使用纯文本文件,将一些shell的语法与指令写在里面,然后用正规表示法,管道命令以及数据流重导向等功能,以达到我们所想要的处理目的。

更明白地来说,shell script就像早期dos年代的.bat,最简单的功能就是将许多指令汇整写一起,让使用者很容易地就能够一个操作执行多个命令。

参考资料来源:百度百科-Shell脚本

回答2:

方法有很多:

var=4.57
法一:
echo ${var%.*} #这个是直接去除小数点及后面所有内容,只用于bash
法二:
echo $var | awk -F. '{print $1}' #以小数点为分隔符取第一个字段
法三:
echo $var | awk '{print int($0)}' #awk中可直接使用C函数取整
法四:
echo "scale=0;$var/1"|bc -l #用bc计算
法五:
printf "%.0f\n" $var #这个与上面不同,是四舍五入的

回答3:

你可以找下函数 有公式取整数,例如:

Basic函数原型  INT(number)
类别  数学函数
返回值  Integer 类型
作用  求不大于number
的最大整数,Int(3.8)=3,Int(-3.8)=-4。

注意:int不能取整!取整要用fix!

BASIC INT(number)取比number小的最大的整数。INT(1.1)=1
INT(-1.1)=-2。