shell命令行混合进制计算器

需要简单的计算的时候,不想用GUI的计算器,能在shell下直接计算就最好了

查了下,有个东西叫 bc,  具体的使用就不赘述了,可以运行bc,然后进去计算,也可以echo传递过去,大概是像这样

echo "1+2" | bc

echo "ibase=16;1A+1" | bc

但用起来比较不爽,首先是要指定进制,这样整个表达式就都是这种进制的,比如说

echo "ibase=16;1A*10" | bc              #计算的是 0x1A * 0x10

但我想计算0x1A乘以10进制下的10的话就比较麻烦了。

要是能有个混合进制计算器就好了,想想其实也可以自己包装一个,只要读入表达式,然后将非10进制的数字都转换成10进制,再将处理过的表达式传递给bc,应该就可以了。

于是,就写了个脚本,放到github了,有需要请访问https://github.com/zqb-all/smartbc

下载后,需要加上可执行权限,然后链接到你环境变量找得到的地方

比如

chmod +x smartbc

sudo ln -s `pwd`/smartbc  /usr/bin/smartbc

或者起个别的名字也行的

sudo ln -s `pwd`/smartbc  /usr/bin/mybc

然后就可以用了,具体看帮助吧

smartbc -h

本文链接 http://www.cnblogs.com/zqb-all/p/6793917.html

时间: 2024-08-04 20:39:50

shell命令行混合进制计算器的相关文章

windows下shell命令行的常用操作命令

windows下shell命令行的常用操作命令 Command Shell是Windows内置的第一个使用批处理(.bat)文件自动执行日常任务,可以在Command Shell中运行更复杂的脚本 进入d盘直接输入 d: 切换目录 cd 显示目录 dir 进入某个文件夹并打开windows窗口 start ./filepath 远程连接ssh 与linux下一样,直接输入用户名@ip,输入密码即可 显示ip ipconfig Net user 功能:查看本机账户情况 net user xxx 1

SylixOS下Shell命令行执行模块内函数

1. 适用范围 本文档介绍了在Shell命令行执行内核模块内函数实现原理.   在VxWorks中,系统自带有在Shell命令行直接执行驱动.应用内函数的功能,此功能完善了驱动开发工程师.应用开发工程师的开发.调试的手段.为了让这类工程师能快速适应SylixOS,据此开发了类似的功能模块,目前第一版支持在Shell命令行执行内核模块内的函数. 2. SylixOS内核模块动态加载原理 2.1 SylixOS中的ELF文件 SylixOS中的ELF文件主要有三种: - obj文件: 一个源文件编译

Shell 命令行快捷键

在shell命令终端中,Ctrl+n相当于方向向下的方向键,Ctrl+p相当于方向向上的方向键. 在命令终端中通过它们或者方向键可以实现对历史命令的快速查找.这也是快速输入命令的技巧. 在命令终端中可以通过Ctrl+r 实现快速检索使用过的历史命令.Ctrl+r中r是retrieve中r. Ctrl+a:光标回到命令行首. (a:ahead) Ctrl+e:光标回到命令行尾. (e:end) Ctrl+b:光标向行首移动一个字符. (b:backwards) Ctrl+ f:光标向行尾移动一个字

〖Linux〗上传单个文件到FTP的Shell命令行(函数)

1 #!/bin/bash - 2 #=============================================================================== 3 # 4 # FILE: ftp_put_file.sh 5 # 6 # USAGE: ./ftp_put_file.sh 7 # 8 # DESCRIPTION: 9 # 10 # OPTIONS: --- 11 # REQUIREMENTS: --- 12 # BUGS: --- 13 # NO

几种在shell命令行中过滤adb logcat输出的方法

我们在Android开发中总能看到程序的log日志内容充满了屏幕,而真正对开发者有意义的信息被淹没在洪流之中,让开发者无所适从,严重影响开发效率.本文就具体介绍几种在shell命令行中过滤adb logcat输出的方法. 1.只显示需要的输出(白名单) 最方便的当然是通过管道使用 grep 过滤了,这样可以使用 grep 强大的正则表达式匹配.简单的匹配一行当中的某个字符串,例如 MyApp: adb logcat | grep MyApp       adb logcat | grep -i

使用jq工具在Shell命令行处理JSON数据

因为最近要处理一些 JSON 数据格式,一大早经过一番搜索后,最终找到了 jq 这个很棒的工具.jq 允许你直接在命令行下对 JSON 进行操作,包括分片.过滤.转换等等. 首先在mac下安装jq,使用brew install jq就可以了,前提是安装了homebrew,如果在linux ubuntu下,应该可以使用sudo apt-get install jq安装. 让我们通过几个例子来说明 jq 的功能: 一.输出格式化,漂亮的打印效果 如果我们用文本编辑器打开 JSON,有时候可能看起来会

* 和 ?在 shell 命令行中与在正则表达式中的区别

Linux 正则表达式 你有没有想过,在 shell 命令行中的 *,?和正则表达式中的*,?是否一样? 自打好多年前接触 DOS,就知道了* 和?这两个通配符(Wildcard),象 dir *.* 这样的命令也不知道敲了多少遍. 后来,开始用 Windows 3.1 这样的图形界面操作系统,命令行就就得越来越少了. 再后来,开始学习正则表达式,又开始接触 * 和 ? 这样的东西.在正则中它们被称为元字符(Meta Character). 再再后来,开始使用 Linux,于是又开始使用命令行,

自学Linux Shell2.1-进入shell命令行

点击返回 自学Linux命令行与Shell脚本之路 2.1-进入shell命令行 文件系统是文件存放在磁盘等存储设备上的组织方法.Linux系统能支持多种目前流行的文件系统,如EXT2. EXT3. FAT. FAT32. VFAT和ISO9660. 原文地址:https://www.cnblogs.com/yaoyaojcy/p/9172448.html

(转)Android 使用 adb shell 命令行启动应用

原文:http://blog.chinaunix.net/uid-26997997-id-3350449.html 在Android中,除了从界面上启动程序之外,还可以从命令行启动程序,使用的是命令行工具am. usage: am [subcommand] [options] start an Activity: am start [-D]        -D: enable debugging send a broadcast Intent: am broadcast start an Ins