shell 数学运算
Posted 一口Linux
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell 数学运算相关的知识,希望对你有一定的参考价值。
数学运算之 expr
expr操作符对照表
比较大小,只能对整数进行比较,需要加空格,linux 保留关键字要转义
1 2 3 |
|
查看上一条命令有没有执行成功
1 |
|
返回0 成功,其他失败
小于、小于等于、大于等于
1 2 3 |
|
运算 加、减、乘、除
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
需要注意事项:
两个小括号的计算方法,要赋值,否则会报错
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
一些操作符在$(()) 不支持, 在比较运算的时候最好使用expr
1 2 3 |
|
1 |
|
练习例子
提示用户输入一个正整数num,然后计算1+2+3+...+num的值;必须对num是否为正整数做判断,不符合应当运行再次输入
判断是否是一个正整数
思路:
- expr只能对整数进行计算,直接用expr 和一个整数计算获取 $? 的值来判断是否为整数
- 在使用 expr $num1 \\> 0 判断是否大于0
1 2 3 |
|
sum.sh
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
|
执行脚本
1 |
|
shell 运算之 bc
bc 介绍:
- bc 是bash内建的运算器,支持浮点数运算
- 内建变量scale可以设置,默认为 0
bc 操作符对照表
交互测试
脚本中使用管道符进行计算
1 |
|
保留精度 scale=4; 用分号隔开
1 |
|
bc示例脚本
bc.sh
1 2 3 4 5 6 7 8 9 10 11 |
|
执行
1 |
|
以上是关于shell 数学运算的主要内容,如果未能解决你的问题,请参考以下文章