6.shell中的运算

一、运算符号

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

二、运算指令

(())	##((a=1+2))
let 	##let a=1+2
expr	 ##expr 1 + 2
bc
bc << EOF
1+2
EOF
$[]		##echo $[1+2]
printf '%0.2f' .3 ==== 0.30
printf '%0.3f' .3 ====0.300
printf '%0.4f' .3 ====0.3000

在这里插入图片描述

#!/bin/bash
for ((I=1;I<=10;I++))
do
  ((J+=I))
  echo $J
done

在这里插入图片描述
脚本练习
要求

随机生成1到10之间的数,输入数字,输入数字偏大,显示数字大了,小了,提示小了,直到输入和随机数一致,结束

#!/bin/bash
LUCK_NUMBER=$[$RANDOM%10]
echo $LUCK_NUMBER
while true
do
  read -p "Please input number:" NUM 
  if [ "$LUCK_NUMBER" -gt "$NUM" ]
  then
    echo $NUM is too small
  elif [ "$LUCK_NUMBER" -lt "$NUM" ]
  then
    echo $NUM is too big
  else
    echo yes !!!
    exit
  fi  
done

或者

#!/bin/bash
LUCK_NUMBER=$[$RANDOM%10]
echo $LUCK_NUMBER
while true
do
  read -p "Please input number:" NUM 
  if (($LUCK_NUMBER > $NUM))
  then
    echo $NUM is too small
  elif (($LUCK_NUMBER < $NUM))
  then
    echo $NUM is too big
  else
    echo yes !!!
    exit
  fi  
done

在这里插入图片描述
时钟倒计时脚本

#!/bin/bash
MIN=1
SEC=10
SECALL=$[$MIN*60+$SEC]
for ((;SECALL>0;SECALL--))
do
SHOWMIN=$[$SECALL/60]
SHOWSEC=$[$SECALL%60]
if (($SHOWSEC < 10))
then 
  echo -ne "$SHOWMIN:0$SHOWSEC"
  sleep 1
  echo -ne "\r"
else 
  echo -ne "$SHOWMIN:$SHOWSEC"
  sleep 1
  echo -ne "\r"
fi
done

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

多于少的区别

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值