码迷,mamicode.com
首页 > 其他好文 > 详细

[20191010]bash行计算器.txt

时间:2019-10-11 21:49:37      阅读:92      评论:0      收藏:0      [点我收藏+]

标签:函数   冲突   一个   sed -e   情况   scale   出现   bash   中括号   

[20191010]bash行计算器.txt

--//写一个bash行计算器,为了避免冲突,函数命名为2个=,1个=感觉不是很好(心里上^_^)。
--//使用bc计算器,里面函数不能使用圆括号,使用中括号代替。

== ()
{
    local in="$(echo "$@" | sed -e ‘s/\[/(/g‘ -e ‘s/\]/)/g‘)";
    echo $in | bc -lq | tr -d ‘\n\\\r‘ | sed -e "s/\.\([0-9]*[1-9]\)0\+$/.\1/" -e "s/\.0\+$//"
}

--//写入.bashrc脚本里面就ok了.
--//一些测试:

$ == "scale=4;4/3"
1.3333
--//有分号要加引号才行.

$ == 12*5+11.234
71.234

$ == l[100]/l[10]+1.234
3.234
--//函数使用中括号代替源括号.

$ == s[3.14159]
.00000265358979323534

$ == 2^240
1766847064778384329583297500742918515827483896875618958121606201292619776
--//在bc下执行出现折行情况.

$ echo 2^240 | bc -lq
17668470647783843295832975007429185158274838968756189581216062012926\
19776

$ == "scale=100;a(1)*4"
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170676
--//PI小数点100位.


[20191010]bash行计算器.txt

标签:函数   冲突   一个   sed -e   情况   scale   出现   bash   中括号   

原文地址:https://www.cnblogs.com/lfree/p/11657112.html

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