六、shell中的运算

一、运算符号

+                    加法
-                    减法
*                    乘法
/                    除法
%                    除法后的余数
**                   乘方
++                   自加一
--                   自减一
<                    小于
<=                   小于等与
>                    大于
>=                   大于等与
=                    等于
+=                   j+=i  =j+i
*=                   j=j*i
/=                   j=j/i
%=                   j=j%i

二、运算指令

(())                ((a=1+2))
let                 let a=1+2
expr                expr 1 + 2

在这里插入图片描述
$[ ]
在这里插入图片描述
bc
在这里插入图片描述
显示小数点后几位
在这里插入图片描述

三、练习

1.倒计时10秒,显示倒计时时间,不换行
echo -n不换行

[root]@[foundation51][/mnt]~> cat second.sh 
for i in {10..1}
do
    echo -n " ${i}s "
    echo -ne "\r"
    sleep 1
done
[root]@[foundation51][/mnt]~> cat second2.sh 
for ((j=10;j>0;j--))
do
    echo -n " ${j}s "
    echo -ne "\r"
    sleep 1
done

创建脚本,设定倒计时为1:10,自动进行倒数,时间到时退出脚本。

[root]@[foundation51][/mnt]~> cat test2.sh 
M=1
S=10
for ((;S>=0;S--))
do
    if [ "$S" = "0" -a "$M" = "0" ]
    then
        exit
    elif [ "$S" = "0" -a "$M" -gt "0" ]
    then
        echo -n "after $M:$S is end "
        echo -ne "\r"
        ((M-=1))
        S=60
        sleep 1
    else
        echo -n "after $M:$S is end "
        echo -ne "\r"
        sleep 1
    fi
done

版权声明:本文为qwejiaji原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。