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 | |
| 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 |

练习

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

复制代码
m=1
s=10
t=$((m*60+s))
for((t;t>=0;t--))
do
        m=$((t/60))
        s=$((t%60))
        echo -ne "$m:$s"
        sleep 1
        echo -ne "\r"
done
相关推荐
ZzzZZzzzZZZzzzz…2 分钟前
K8S实战:NFS+StorageClass+PV/PVC+Deployment
运维·云原生·容器·kubernetes·storageclass·linux运维·持久卷
jufeng13077 分钟前
【系列:MiniKV 原理剖析 · 第 8 篇(完结篇)】
linux·c++·log4j·软件工程·makefile
BerrySen1789 分钟前
一个 JDBC 参数引发的架构演进:Apache SeaTunnel 如何解决数据同步中的“定时 Flush”难题
运维·自动化·zabbix
qetfw12 分钟前
Debian OpenSSL 搭建 CA 证书服务:签发、吊销与客户端信任
linux·debian·openssl·ca
Embedded-Xin21 分钟前
中间件—zenoh零基础入门
linux·中间件·rust·机器人·自动驾驶·嵌入式
草莓熊Lotso1 小时前
【Linux网络】从0手写Reactor反应堆(二):完善核心细节——ET非阻塞读写、分层架构与回调机制
linux·运维·服务器·网络·c++·tcp/ip·架构
mounter6251 小时前
深度解析 eBPF LSM:如何利用 eBPF 构建安全的 Linux 内核纵深防御体系
linux·安全·ebpf·linux kernel·kernel
xlq223222 小时前
高并发服务器day21
运维·服务器
DFT计算杂谈2 小时前
FeSe超薄膜在CaF2衬底上的电子结构DFT研究
java·服务器·前端
Brilliantwxx2 小时前
【Linux】 第一个程序终端进度条
linux·运维·服务器