一:exit(0)与exit(1)、return区别
exit函数是退出应用程序,删除进程使用的内存空间,并将应用程序的一个状态返回给OS,这个状态标识了应用程序的一些运行信息,这个信息和机器和操作系统有关,一般是 0 为正常退出, 非0 为非正常退出。
return返回函数值,是关键字,它表示了调用堆栈的返回,退出函数。
二:数学运算
简单运算:let,[ ],(( ))
高级运算:expr,bc
1、let
let是bash内置命令,可以实现简单的算术运算和逻辑运算
代码语言:javascript复制#!/bin/bash
i=10
echo $i
let a=i 100
echo "a="$a
let b=$i 100
echo "b="$b
》10
》a=110
》b=110
2.[ ]
代码语言:javascript复制#!/bin/bash
i=10
echo $i
a=$[i 100]
echo "a="$a
b=$[$i 100]
echo "b="$b
》10
》a=110
》b=110
3.(( ))
代码语言:javascript复制#!/bin/bash
i=10
echo $i
a=$((i 100))
echo "a="$a
b=$(($i 100))
echo "b="$b
》10
》a=110
》b=110
4.expr
代码语言:javascript复制#!/bin/bash
i=10
echo $i
#变量和运算符之间没有空格
a=`expr $i 100`
echo "a="$a
#当变量和运算符有空格
b=`expr $i 100`
echo "b="$b
》10
》a=10 100
》b=110
5.bc
bc
命令是一个支持精确的浮点运算的高级计算器,支持数学函数调用。
#!/bin/bash
i=10
j=3
a=`expr $i / $j`
echo "a="$a
b=`expr "scale=9; $i / $j" |bc`
echo "b="$b
~
》a=3
》b=3.333333333
二:浮点数的比较
-eq 相等
-gt 大于
-lt小于
-a或者&& 和
-o或者|| 或
代码语言:javascript复制#!/bin/bash
i=0.6
if [ $(echo "${i} >0" |bc) = 1 ];then
echo "1111"
else
echo "2222"
fi
》1111