位置: 编程技术 - 正文

在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 系统升级)

  • 一般纳税人增值税申报操作流程
  • 收到个人保险费会计分录
  • 外汇储备保值增值
  • 工程物资什么时候结转到开发成本里面
  • 资产负债表季报本月数怎么填
  • 其他业务收入冲应收账款
  • 个税隔一个月没申报这个月可以补上吗
  • 收到投资款需要缴纳增值税吗
  • 企业收到利息发票怎么做分录
  • 纳税申报表销售额可以是负数吗
  • 煤炭企业会计核算办法
  • 小规模纳税人季报还是月报?
  • 矿泉水资源税计税依据
  • 应付账款多计怎么处理
  • 公司注销后会计凭证保管年限
  • 代扣个税手续费返还怎么申请
  • 公摊电费计入什么科目
  • 复利现值系数和普通年金现值系数关系
  • 开票金额和实际金额不一致
  • 出口企业如何做锁汇
  • 旧税号开出的发票能认证抵扣吗?
  • 房地产开发成本占比
  • 当月进项已认证,发现票有问题怎么处理
  • 公司向职工借款不还怎么办理
  • 净资产收益率公式怎么算出来的
  • 员工把发票丢了怎么处理
  • mac电脑安装了windows
  • 失控票要在抵扣当月转出吗
  • php-ml
  • 合同已无法履行
  • php_fileinfo作用
  • 预收账款的账务处理摘要
  • Ubuntu18.04安装cuda10.2
  • userpasswords
  • 应付利息和利息支出什么时候用
  • 权益法的比例是多少
  • wp留言板插件
  • 销货退回未开红字发票
  • 物流行业的会计有前途吗
  • 加计抵减进项税额怎么计算
  • 无形资产有在建工程吗
  • 无偿调入的固定资产怎么记账
  • 商业企业如何建账
  • 应收帐款坏帐会计分录怎么处理
  • 报销单可以当记账凭证吗
  • 违约金从货款中扣除如何记账
  • 民非企业附加税计提和缴纳分录
  • 企业利润分配的内容
  • 长期应付款涉及哪些业务,应如何进行核算
  • 商品流通企业进货费用
  • sql语句查询去重
  • ROW_NUMBER SQL Server 2005的LIMIT功能实现(ROW_NUMBER()排序函数)
  • 怎么怎么恢复
  • 修改linuxip
  • win7系统怎样设置
  • win10安装更新
  • mac如何访问win10文件
  • win7下安装XP
  • win10打开小娜
  • windows8如何设置电脑锁屏时间
  • winxp能玩啥大型游戏
  • windows 10 mobile--移动版
  • linux bzz
  • tab栏切换案例
  • js加载失败怎么办
  • vue assign
  • 数组observer
  • jquery prevall
  • jquery 动态加载js
  • shell字符串截取加替换
  • html:xt
  • nodejs xhr
  • 解决问题
  • clipboard.js无需Flash无需依赖任何JS库实现文本复制与剪切
  • android基于linux还是unix
  • 在海口二手房需交什么税
  • 北京市国家税务网
  • 个人所得税税单去哪里打印
  • 餐饮财务分析表怎么写的啊
  • 富士康走了,京东去哪了
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设