1、使用bash

使用双括号可以像C语言一样直接使用运算符进行计算。

echo $((+))
a=$((*))
echo $a
b=$(($a-))
echo $b
d=$(($b/))
echo $d
e=$(($a%))
echo $e

2、使用let命令

使用let命令后,可以直接跟表达式,不用加双括号。

let a=+
echo $a
let b=$a*
echo $b
let c=$b/
echo $c

3、使用expr命令

类似于let命令,expr命令除了计算表达式,还将提供的表达式的值打印到标准输出。以及使用expr进行比较,增加变量值和查找字符串长度。

expr  +
expr %
expr \*
expr 5 - 3
expr / 4
NUM=$(( 1 + 2))
echo $NUM
NUM=$(expr $NUM + 2)
echo $NUM

需要注意的是使用expr命令时,数字与运算符之间要用空格隔开。并且”*“需用转义符“\”标注。

expr 还可以用来比较大小,当表达式求值为false时,expr将打印值0,否则打印1。

expr  =
expr =
expr !=
expr \>
expr \<
expr \<= 5

同时expr可以用来查看字符串长度。

expr length "hello world!"
#等效于
echo "hello world!" | wc -L

更多expr用法请参照man expr。

4、使用bc命令

bc其实就是一个基于终端的计算机程序,有交互和非交互两种使用方式。

直接输入bc就可以进入交互模式,在里面输入表达式即可。

同时也可以通过管道来使用。

echo '3+4' | bc
echo '3*4' | bc
echo '33/4' | bc
echo '32%6' | bc
echo '33/6' | bc -l

-l 用于精确到小数(默认小数点后20位)计算。

5、使用awk命令

awk非常强大,功能也非常多,这里只介绍其用于算数运算。

awk 'BEGIN { a = 10; b = 3; print "(a + b) = ", (a + b) }'
awk 'BEGIN { a = 10; b = 3; print "(a - b) = ", (a - b) }'
awk 'BEGIN { a = 10; b = 3; print "(a * b) = ", (a * b) }'
awk 'BEGIN { a = 10; b = 3; print "(a / b) = ", (a / b) }'
awk 'BEGIN { a = 10; b = 3; print "(a % b) = ", (a % b) }'

6、使用factor命令

factor命令用于将整数分解为素数因子

factor
factor
factor
factor

总结在Linux终端中进行算术运算的6种方式的更多相关文章

  1. Linux系统中安装软件的几种方式

    转载:https://blog.csdn.net/qq_36119192/article/details/82866329 好长时间没有静下心来学习一下linux了 最近对linux安装软件有了点小小 ...

  2. 如何在 Linux 终端中知道你的公有 IP

    导读 在本文中我将会介绍在几种在 Linux 终端中查看你的公有 IP 地址的方法.这对普通用户来说并无意义,但 Linux 服务器(无GUI或者作为只能使用基本工具的用户登录时)会很有用.无论如何, ...

  3. 在Linux终端中查看公有IP的方法详解

    首先回顾一下一般的查看IP的命令: ifconfigLinux查看IP地址的命令--ifconfigifconfig命令用于查看和更改网络接口的地址和参数 $ifconfig -a  lo0: fla ...

  4. python代码在linux终端中执行报错:Unable to init server: Could not connect: Connection refused

    python代码在linux终端中执行时报错: Unable to init server: Could not connect: Connection refused Unable to init ...

  5. linux内核分析作业4:使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用

    系统调用:库函数封装了系统调用,通过库函数和系统调用打交道 用户态:低级别执行状态,代码的掌控范围会受到限制. 内核态:高执行级别,代码可移植性特权指令,访问任意物理地址 为什么划分级别:如果全部特权 ...

  6. LInux内核分析--使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用

    实验者:江军 ID:fuchen1994 实验描述: 选择一个系统调用(13号系统调用time除外),系统调用列表参见http://codelab.shiyanlou.com/xref/linux-3 ...

  7. Linux内核设计第四周学习总结 使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用

    陈巧然原创作品 转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 实验目的: 使用库函数A ...

  8. Shell脚本中执行mysql的几种方式(转)

    Shell脚本中执行mysql的几种方式(转) 对于自动化运维,诸如备份恢复之类的,DBA经常需要将SQL语句封装到shell脚本.本文描述了在Linux环境下mysql数据库中,shell脚本下调用 ...

  9. Linux查看实时网卡流量的几种方式

    Linux查看实时网卡流量的几种方式 来源  https://www.jianshu.com/p/b9e942f3682c 在工作中,我们经常需要查看服务器的实时网卡流量.通常,我们会通过这几种方式查 ...

随机推荐

  1. 【Dairy】2016.10.24 - made 嘲讽垃圾

    //这个还找不到我的博客,但在看到原文 //这个还找不到我的博客,但在看到原文 //这个还找不到我的博客,但在看到原文 //这个还在我前面,访问多 一波嘲讽,woc 今天百度一下文章,发现有一篇和我一 ...

  2. SQLAlchemy框架---ORM思想

  3. 杂项:MySQL

    ylbtech-杂项:MySQL 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部 0. https://www.mysql.com/ 1. https://bai ...

  4. [Shell学习笔记] read命令从键盘或文件中获取标准输入(转载)

    转自:http://www.1987.name/151.html read命令是用于从终端或者文件中读取输入的内部命令,read命令读取整行输入,每行末尾的换行符不被读入.在read命令后面,如果没有 ...

  5. git回到没push的commit

    创建: 2017/10/28   merge master以后数据库出了问题,改好以后发现view有点问题,commit以后没提交就reset了.过后才想起来怎么回去???吓成狗,索性找到了下面这个. ...

  6. 一张图带你了解-常见面试之JUC包详解

    面试时经常问到JUC包下的类及特性,现在用一张图总结下

  7. liunx 用户切换 su sudo

    liunx 用户操作#useradd test#passwd test 用户身份切换su 切换用户 需要知道切换用户的密码1.su [-lm] [-c命令] [username] #su -login ...

  8. Coding Pages 服务与万网域名的配置

    1071220 http://support.huawei.com/learning/NavigationAction!createNavi?navId=MW000001_term1000190292 ...

  9. [转]oracle 同义词 synonym

    本文转自:http://blog.csdn.net/generalfu/article/details/7906561 同义词定义 当一个用户想访问另外一个用户的表时, 需要在表前加用户名,总加表名不 ...

  10. TypeError: string indices must be integers, not str

    1. TypeError: string indices must be integers, not str 字符串类型取第index个字符的时候,应该传入int而不是str.如 1 a='abcde ...