位置: 编程技术 - 正文

在Linux中使用命令行计算器GNU bc的方法(linux命令使用例子)

编辑:rootadmin

推荐整理分享在Linux中使用命令行计算器GNU bc的方法(linux命令使用例子),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:在linux系统中命令,linux命令使用例子,使用linux命令,在linux中使用命令锁定用户cy,linux基本命令的使用实验,linux中命令的用法,在linux中使用命令锁定用户cy,在linux系统中命令,内容如对您有帮助,希望把文章链接给更多的朋友!

每个现代的Linux桌面发行版都预装着一个带有图形界面的计算器程序。不过如果你的工作区中全是命令行窗口,那么你一定会在其中的一个命令行窗口中处理一些数字相关的问题。或许你在寻找一款基于命令行的计算器程序。如果是这样的话,GNU bc(“basic calculator”的缩写)会是你不二的选择。当然Linux下有很多基于命令行的计算器应用,我认为GNU bc是功能最强大和最有用的。

在GNU时代之前,bc实际上是一个著名的精密计算语言。它的诞生要追溯到年代的Unix时期了。最初bc作为一个语法和C语言相似的编程语言而著名。随着时间的改变,最开始的bc演化成POSIX bc,最后变成了今天的GNU bc。GNU bc的特性

现在的GNU bc是早期bc经过若干次改进和功能增强的结果。目前它被所有的主流GNU/Linux发行版所收纳。GNU bc支持高精度数字和多种数值类型(例如二进制、十进制、十六进制)的输入输出。

如果你对C语言很熟悉的话,你会发现bc使用了和C语言一样或相似的算术操作符。所支持的操作符包括算术运算符(+, -, *, /, %, ++, --)、比较运算符(<, >, ==, !=, <=, >=)、逻辑运算符(!, &&, ||)、位运算符(&, |, , ~, <<, >>)和复合赋值运算符(+=, -=, *=, /=, %=, &=, |=, =, &&=, ||=, <<=, >>=)。bc内置了很多有用的函数,像是平方根、正弦、余弦、反正弦、自然对数、指数等。如何使用GNU bc

作为一个基于命令行的计算器,GNU bc的使用没有限制。在本文中,我会向大家介绍bc命令的几个常用的特性。如果你想要更加详细的指导,你可以查阅官方指南。

如果你没有一个预先写好的bc脚本,那么你可以在交互模式下运行bc。在这种模式下,你输入的以回车结束的任何声明或者表达式会被立刻计算出结果。你需要输入以下命令来进入bc的交互界面。如果想退出bc,你可以输入'quit'并且按回车。

复制代码代码如下: $ bc

本文下面展示的例子请在bc交互界面中输入。输入表达式

如果想要计算一个算术表达式,我们可以在闪烁的光标处输入该表达式,然后按回车确认。你也可以将该结果存储到一个变量中,然后在其他表达式中使用该变量。

在一个bc的交互界面中,保存着没有个数限制的命令历史记录。使用上方向键来查看之前输入的命令。如果你想限制历史记录保存的命令数量,你可以将一个名为history的特殊变量设置成你希望的数值。该变量默认为-1,也就是“历史记录数量没有限制”。输入输出进制切换

经常会发生的是,你输入一个表达式并且想使用二进制或者十六进制来显示结果。bc允许你在输入输出数字的进制间转换。输入和输出的数系基分别存储在ibase和obase变量中,默认值为,有效的数值是2到(或者环境变量BCBASEMAX的值)。你只需要更改ibase和obase的值就可以在不同进制之间转换了。下面是一个求两个十六进制/二进制数和的例子:

需要注意的是,我有意地将obase=放到了ibase=前面,反过来则是不可以的。这个是因为如果我先输入ibase=,那么随后输入的obase=中的会被认为是进制的数字,也就是十进制的。当然这个不是我们所期望的。调整精度

在bc中,数字的精度存储在一个名为scale的特殊变量中。该变量表示小数点后数字的个数。scale默认为0,意味着所有的数字和结果以整数形式储存。你可以通过改变scale这个特殊变量的值,来调整数值的精度。

复制代码代码如下: scale=4

使用内置函数

除了简单的算术操作符,GNU bc还通过外部的数学函数库来提供许多高级的数学函数。你可以在命令行界面使用“-l”选项来打开bc。

这里描述了一些内置的函数。

在Linux中使用命令行计算器GNU bc的方法(linux命令使用例子)

N的二次方根:

sqrt(N)

X的正弦(X是弧度):

s(X)

X的余弦(X是弧度):

c(X)

X的反正弦(返回值是弧度):

a(X)

X的自然对数:

l(X)

X的指数对数:

e(X)

当做语言来用

作为一个计算语言,GNU bc支持简单的声明(变量赋值、中断、返回等)、复合语句(if、while、for loop等)和自定义函数。在这里我不会涉及到这些特性的细节,不过你可以通过官方指南来学习如何使用这些特性。下面是一个简单的函数示例:

复制代码代码如下:define dummy(x){ return(x * x); } dummy(9) dummy(4)

在非交互界面下使用GNU bc

到目前为止,我们一直在交互界面下使用bc。不过更加流行的使用bc的方法是在没有交互界面的脚本中运行bc。这种情况下,你可以使用echo命令并且借助管道来向bc发送输入内容。例如:

复制代码代码如下: $ echo "*5" | bc $ echo "scale=4; /3" | bc $ echo "obase=; ibase=2; " | bc

总结一下,GNU bc是一款强大并且通用的基于命令行的计算器应用,它绝对不会让你失望。它预装在所有的现代Linux发行版中,bc可以让你不用离开命令行就可以进行高效的数学计算。所以,GNU bc一定会是你的最爱。

个高效但不常见的Linux命令 1.mvxxxx{,.bak}等同于mvxxxxxxxx.bak2.esc+.能填充之前命令的最后一个字段3.diff(sshhost1catfile1)(sshhost2catfile2)diff两个远程文件4.ctrl+r然后输入xxx,搜索之前包含xxx

Linux中升级更新命令yum upgrade和yum update的区别 Linux升级命令有两个分别是yumupgrade和yumupdate,这个两个命令是有区别的:复制代码代码如下:yum-yupdate升级所有包同时也升级软件和系统内核复制代码代码如

在云端的Linux服务器上加密文件系统的方法 AmazonS3和GoogleCloudStorage之类的商业云存储服务以能承受的价格提供了高可用性、可扩展、无限容量的对象存储服务。为了加速这些云产品的广泛采用,这

标签: linux命令使用例子

本文链接地址:https://www.jiuchutong.com/biancheng/366866.html 转载请保留说明!

上一篇:Linux中的内置命令和外部命令详解(linux内核命名)

下一篇:Linux中升级更新命令yum upgrade和yum update的区别(linux 系统升级)

  • 投资者从其投资企业借款
  • 车船使用税怎么网上缴费
  • 运输途中的不合理损耗有哪些
  • 未实际收到的投资收益要纳税调整吗
  • 应交增值税减免税款
  • 企业投资可以税后扣除吗
  • 普通发票验旧后当月能作废吗
  • 纳税人提供应税服务的价格明显偏低
  • 亏损结转本年利润会计分录
  • 避税方法一般有几种
  • 固定资产出售增值税税率
  • 金税三期房产税源信息更改后
  • 核定征收是不是不需要发票了
  • 发票勾选认证截图图片
  • 查账征收的成本费用
  • 银行存款余额调节表保管期限
  • 增值税发票开具错误重开该怎么做会计分录?
  • 补交以前年度个税怎么做账
  • 企业支付方式有几种
  • 查看所有共享文档
  • 打开网页时显示无法获取属性
  • 鸿蒙3.0系统哪些手机可以升级
  • 电脑上网速度慢的原因及解决方法
  • 逆流交易合并报表调整少数损益
  • 小规模纳税人如何申报增值税
  • 公司之间可以借款吗怎么做账
  • 买入投资性房地产的会计处理
  • macbook怎么设置输入法
  • 台式机装win10哪个版本好
  • 付不出去的应付账款如何写说明书
  • 损益类科目包括费用类科目吗
  • macOSCatalina10.15.5Beta4值得升级吗 macOSCatalina10.15.5Beta4更新了什么
  • 旅游业纳税筹划方案
  • 我国消费税的特点
  • Js模板字符串添加点击事件
  • 拍卖抵押车 卖不出去怎么办
  • 外贸企业收款有限额吗
  • 全国通用机打销售票真伪
  • 费用报销做账分录
  • 购买增值税发票属于什么科目?
  • 专票和普票都是13个点嘛
  • 外经证网上查询
  • 什么情况下要缴纳房产税
  • 附加税费怎么计算
  • 小规模纳税人免税怎么做账
  • 企业迁移税务如何办理
  • 法院拍卖得来的物品有发票吗
  • 财务费用如何调到筹资费用
  • 预计负债是暂时性差异还是永久性差异
  • 信用卡什么情况下会被冻结
  • 印花税多久申报一次2023
  • 主营业务收入为负数是什么意思
  • etc电子发票需要勾选吗
  • mysql的日志
  • mysql求两个字段的和
  • win7旗舰版系统恢复
  • win7登录设置
  • win7网络不好怎么办
  • 微软更新kb4474419
  • xp电脑开机进入bios怎么办
  • 使用注册表删除软件时,有些拒绝访问
  • ubuntu下安装windows
  • centos 修改网络配置文件
  • win10可以关闭的功能
  • 虚拟机安装win8系统
  • 简单谈谈对中国电信的认识
  • jquery tagname
  • 纯js代码实现一进一出
  • android拍照
  • Node.js中的什么模块是用于处理文件和目录的
  • android基础知识大全
  • 从零开始学什么好
  • jQuery与Ajax以及序列化
  • 手把手教你把币从交易所提到钱包
  • jquery教程chm
  • axios异步
  • 东莞市国家税务局网上办税大厅
  • 从国外进口设备需要缴纳增值税吗
  • 2018城镇土地使用税减免政策
  • 设区市是哪里
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设