shell 08(shell计算命令)

一、(())命令

双小括号(( )),用于进行数学运算表达式的执行,将数学运算表达式放在(())之间

可以使用 $ 获取(()) 表达式命令的结果,这和使用$ 获得变量值是一样的。

((表达式))

二、let命令

let 命令和双小括号(())在数字计算方面功能一样,但是没有(( ))功能强大,let只能用于赋值计算,不能直接输出,不可以与条件判断一起使用。

let 赋值表达式

1.语法功能等价于((表达式))
2.多个表达式之间使用空格,不是","号
3.对于类似let a+b这样的写法

  • Shell 虽然计算了a+b 的值,但却将结果丢弃;
  • 如果 echo let a+b 会直接输出字符串 a+b ;
  • 若不想这样,可以使用let sum=a+b 将a+b的结果保存在变量 sum 中。

是最简洁的整数运算赋值命令

多个表达式计算赋值用法: let 变量名1=整数运算表达式1 变量名2=整数运算表达式2 ...

三、$[]命令

和(())、let 命令类似,$[]也只能进行整数运算。但是只能对单个表达式的计算求值与输出

$[表达式]


1.$ 会对表达式进行计算,并取得计算结果

2.表达式内部不可以赋值给变量

四、bc命令

Bash shell内置了对整数运算的支持,但是并不支持浮点运算,而 linux bc (basic calculator)命令可以很方便的进行浮点运算

  • bc命令是Linux简单的计算器,能进行进制转换与计算。能转换的进制包括十六进制、十进制、八进制、二进制等。
  • 可以使用的运算符号包括(+)加法、(-)减法、(*)乘法、(/)除法、()指数、(%)余数等。

4.1 bc中进行互动式的数学运算

语法:

bc [options] [参数]

案例:执行计算任务文件

可以把计算的表达式放到tast.txt 文件中,一起执行:

108*67+12345

58+2007*11

bc -q task.txt

4.2 非互动式的bc管道运算

4.3 非互动式的输入重定向bc运算

将计算表达式输出给bc去执行,特点类似于文件中输入,可以输入多行表达式,更加清晰

猜你喜欢

转载自blog.csdn.net/peng_258/article/details/132453591