当前位置: 首页 > news >正文

Bash shell四则运算

文章目录

    • 四则运算
      • 1. ‌expr 命令‌
      • 2. ‌$(( )) 表达式(推荐)‌
      • 3. ‌$[ ] 表达式(已弃用)‌
      • 4. ‌let 命令‌
      • 小数运算
      • i++ 和 ++i 区别

四则运算

算术运算:+ - * / %(取模,求余数)
Bash shell 中算术运算的四种主要方式及特点如下:

1. ‌expr 命令‌

需严格遵循空格规则,乘法符号 * 需转义为 \*:
r=`expr 4 + 5`      # 加法
r=`expr 4 \* 5`     # 乘法(需转义)
缺点:不支持乘幂运算(如 **)。

2. ‌$(( )) 表达式(推荐)‌

语法简洁,运算符(如 *)无需转义,支持乘幂 **:
r=$(( 4 + 5 ))      # 加法
r=$(( 2 ** 3 ))     # 乘幂(2的3次方)
优点:符合 POSIX 标准,操作符间空格灵活。

3. ‌$[ ] 表达式(已弃用)‌

语法类似 $(( )),但属旧式写法,部分新版 Bash 已不兼容:
r=$[ 4 * 5 ]        # 乘法
不推荐使用,建议优先选择 $(( ))

4. ‌let 命令‌

直接操作变量,支持自增/自减等简化表达式:
let n=5+3           # 加法
let n++             # 自增(等价于 n=n+1)
let "m = 4 * 2"     # 乘法(引号内表达式可含空格)n=2;let n=n**3  #2^3=8
echo $n

小数运算

shell不能做小数运算,做小数运算要装bc命令

echo 1+1.5|bc

在这里插入图片描述

i++ 和 ++i 区别

对变量的值没有影响
在这里插入图片描述
对表达式的值有影响
在这里插入图片描述

相关文章:

  • python,shell,linux,bash概念的不同和对比联系
  • isp调试 blend模式指什么
  • 深圳南柯电子|储能EMC整改:如何节省70%整改费用的实战方法
  • 对比ODR直接赋值的非原子操作和BSRR原子操作
  • 亚远景科技助力东风日产通过ASPICE CL2评估
  • 4-C#的不同窗口传值
  • 如何计算H5页面加载时的白屏时间
  • 如何进行页面前端监控
  • window 显示驱动开发-DirectX 视频加速 2.0
  • 如何用 pnpm patch 给 element-plus 打补丁修复线上 bug(以 2.4.4 修复 PR#15197 为例)
  • 资源-又在网上淘到金了-配乐下载
  • 8.RV1126-OPENCV 视频中添加LOGO
  • 实现对deepseek流式返回的json数据,进行逐字解析并实时渲染
  • Python中os模块详解
  • 蓝桥杯 k倍区间
  • [蓝桥杯]生物芯片
  • 负载均衡相关基本概念
  • 通过阿里云 DashScope API 调用通义千问
  • [蓝桥杯]求解台阶问题
  • Redis 缓存问题及其解决方案
  • 日本 网站 设计 模仿欧美/做网络推广工作怎么样
  • 如何处理脓包痘痘/关键词优化排名软件推荐
  • 青岛做网站/yandex搜索引擎
  • 郴州录取网站/提高网站权重的方法
  • 番禺网站优化平台/公关公司提供的服务有哪些
  • 郑州模板网站建设/培训机构招生方案