shell算数运算

咖啡喝多了.估计今夜无眠了.妈蛋.

shell的算数运算.有太多了.包括很多网上可以下载到的工具.数不胜数.本文只选取常用的进行介绍.

1. $[ ] 这个可能用得比较少.包括我自己第一次见到这个一个东西的时候也很好奇.不过还真的能够达到效果.仅限于整形.不能用来计算浮点数.

缺点是计算有局限性.貌似职能计算加减乘除和模运算.

注:**表示的是幂运算.

2. $(()) 我喜欢把这个叫做C语言模式.无论是在条件判断或者循环中,还是放在这里.变量都没有限制.仅限于整形,浮点数不能用这个表达式.

3. let命令.顾名思义就是让var1=[...].之所以这样理解,是因为let的左值和右值都在let的右边.仅限于整形.浮点数不能用.

注意空格,let后面的表达式不能有空格.

4. expr命令.和let不同.左值在expr左边,右边是表达式.仅限于整形,浮点数不能用.

注意空格,expr后面的参数之间必须有空格.

希望上面的例子不会产生误导.那些运算仅仅是我所知道的.其实还可以有其它的运算,比如位运算.

以上的命令我们可以看到一个共同点,那就是不能计算浮点数,且运算能力有限.可是现实中这几个简单的功能远远不能满足我们的需求.怎么办.

当然同学们可以网上去找一个计算器,甚至带UI界面都可以.这里推荐一款super强大的计算机:bc

据说没有它完成不了的运算.不知道是不是真的.

5. bc  不同于上面的命令,它从标准输入接收表达式,然后把结果输出到标准输出.

其实对于bc我所知道的也就这么几个.很多都得靠man来查找.而取进制这个功能,貌似man都找不到.我是在网上搜很久才找到的.也就是obase和ibase,二者分别代表输出的进制和输入的进制.

bc支持条件判断,移位操作.实现了部分函数.设置可以使用for等流程控制语句.可谓博大精深啊.无奈我值掌握了皮毛.

当然linux下的计算命令远不止这些,比如还可以输入calc.会弹出字符界面进行运算.只是我仅仅积累了这几种方式.

时间: 2024-10-06 08:06:49

shell算数运算的相关文章

shell脚本编程之算数运算

#/bin/bash 在进行shell脚本编程之前一定要在脚本的开头加上上头这一句话,并且要顶着头写,前头不能有空格和空行.这句话的意思是告诉系统用哪一种shell来执行此脚本.如果没有这句话就有可能发生一些意想不到的错误. 接下来说一说在shell脚本中或命令行中如何进行算数运算.也许你已经发现,因为shell中的变量的格式都为字符类型,所以如果只是简单的让一个变量去等于一个表达式的话,那么当输出此变量的时候输出的还是哪个表达式,而并不是表达式所得出来的结果,比如:  ~]$ a=1+2  ~

Shell脚本编程概述(一):算数运算和条件测试

一.shell脚本语言 1.编程语言的分类: (1)根据运行方式 编译运行:源代码 --> 编译器 (编译)--> 程序文件: 解释运行:源代码 --> 运行时启动解释器,由解释器边解释边运行: (2)根据其编程过程中功能的实现是调用库还是调用外部的程序文件: shell脚本编程:利用系统上的命令及编程组件进行编程: 完整编程:利用库或编程组件进行编程: (3)编程模型: 过程式编程语言:以指令为中心来组织代码,数据是服务于代码: 顺序执行.选择执行.循环执行:代表:C,bash 面向对

linux基础之shell编程(2)-条件判断,算数运算,测试

bash中如果实现条件判断? 条件测试类型 整数测试 字符测试 文件测试 条件测试的表达式 有三种 [ expression ] --方括号与表达式之间一定要有一个空格 [[ expression ]] test expression 整数测试 -eq: 测试两个整数是否相等 例:$A -eq $B -ne: 测试两个整数是否不等 不等为真,相等为假 -gt: 测试一个数是否大于另一个数:大于,为真:否则,为假: -lt: 测试一个数是否小于另一个数:小于,为真:否则,为假: -ge: 大于或等

shell脚本从入门到复杂六(条件判断和算数运算)

一.条件判断 分类: 条件测试类型 数值测试 字符串测试 文件测试 1.条件测试的表达式 格式: [ expression ] [[ expression ]] test expression 2.数值测试 参数 说明 -eq 等于则为真 -ne 不等于则为真 -gt 大于则为真 -ge 大于等于则为真 -lt 小于则为真 -le 小于等于则为真 案例1: 判断当前系统上是否有用户的默认shell为bash;如果有,就显示有多少个这类用户:否则,就显示没有这类用户 # vi determine1

Linux - Shell - 算术表达式 - 算数运算

概述 shell 中基于 $(()) 的 算数运算 背景 复习 shell 脚本 凑数吧 准备 环境 os centos7 1. 算数运算 代码 #!/bin/bash # $(()) 的数学运算, 里面的内容, 被解释为 算数表达式 # $(()) 内的变量, 可以不加 $ # 只看 正整数 arg1=4 arg2=5 # 算数运算 # 1. + var1=$((arg1+arg2)) echo $var1 # 2. - var2=$((arg1-arg2)) echo $var2 # 3.

grep命令以及正则表达式,算数运算.

最近一段时间一直在学习算术运算和正则表达式以及条件判断,连续看了四五遍,基本概念已经能够搞清楚了,实际操作中容易把正则表达式和算术运算以及条件判断混淆.看来还是要勤加联系.今天终于是有勇气来总结这两周的学习.在这之前,因为在练习这些逻辑概念性的知识经常会用到grep命令.首先介绍一下grep. 格式:grep [options] 'PATTERN' file,... grep: 文本搜索工具,根据用户指定的文本模式对目标文件进行逐行搜索,显示文件中能够被模式所匹配到的行. 模式PATTERN:指

bash腳本編程之三 条件判断及算数运算

练习: 写一个脚本,判断当前系统上是否有用户的默认shell为bash,如果有就显示有多少个这类的用户:否则,就显示没有这类的用户. #!/bin/bash # grep "\<bash$" /etc/passwd &> /dev/null retval=$? if [ $retval -eq 0 ] then users=`grep "\<bash" /etc/passwd | wc -l` echo "$users"

java的数组index[]方括号内是可以进行算数运算的

java的数组index[]方括号内饰可以进行算数运算的 如: String[] stringArray = testString.split("\\."); System.out.println(stringArray[stringArray.length-1]); 2.非静态方法可以调用静态方法 因为静态方法是类加载时期就进行了,非静态方法是运行时期

bash算数运算&命令替换

1.bash脚本编程之算数运算 + - * / % declare -i num3=5 //直接声明为整数 declare -i num4=6 echo "$num3+$num4" //结果为5+6 (1) let c="$num1+$num2" (2) echo "$[$num1+$num2]" //$中括号和小括号,let,expr (3) echo "$(($sum1+$sum2))" (4) expr $num2 +