码迷,mamicode.com
首页 > 系统相关 > 详细

在shell中做数值计算

时间:2019-12-17 18:19:39      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:括号   命令行   int   选项   没有   shell   文本   初始   标准输入   

shell自带的计算符号只能计算整数
例如:
echo $[1+1]
echo $((1+2))
还有let命令,expr命令
但是都并不好用,只能进行整数的运算,如果要计算小数,可以使用bc命令工具
另外其实除了bc,还可以使用awk来进行数值计算,功能更加强大,而且方便,因为awk本身就是一门编程语言,主要用于对文本的处理,对数据的处理自然不在话下!
要想使用awk计算,建议使用BEGIN模式,熟悉awk的人知道awk的命令行语法是这样的:
awk [选项] ‘BEGIN{执行语句...}{执行语句...}END{执行语句...}’ 文本文件
在单引号里面的三个大括号并不是都要同时有的,都是可选的。
BEGIN后面的大括号跟的是预处理语句,在执行时,并没有读取文本数据,一般就是定义初始化变量用的;中间的大括号是真正在处理文本的语句,END后面的大括号是处理完所有语句的输出总结。
如果用来做数值计算,可以用BEGIN模式就可以了,这样不需要跟任何标准输入
例如:

awk ‘BEGIN{print 1.2+2}‘
awk ‘BEGIN{print 100-50}‘
awk ‘BEGIN{print 1.2*2}‘
awk ‘BEGIN{print 100/50}‘
awk ‘BEGIN{print 2**2}‘
awk ‘BEGIN{print 3+2*1}‘

在shell中做数值计算

标签:括号   命令行   int   选项   没有   shell   文本   初始   标准输入   

原文地址:https://blog.51cto.com/13560219/2459200

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!