Shell 入门教程(九):如何进行数学运算

文章首发于【陈树义的博客园】,点击跳转到原文:https://www.cnblogs.com/chanshuyi/p/quick_start_of_shell_09_arithmetic.html

在 Shell 中进行数据运算是一件很头疼的事情,因为 Shell 的数学运算和我们高级语言中的语法完全不一样。例如在 Java 中下面一个简单的算术:

int a = 10 + 5;

你以为是这么写的:

#!/bin/bash
a=10+5
echo $a

但实际上上面的输出是:10+5。我们在第四小节的时候说过,Shell 中把所有东西都当成是一个字符串,所以这里它并不知道我们要它进行数学运算。实际上在 Shell 中你要进行这样的数学运算,你应该这么写:

#!/bin/bash
a=`expr 10 + 5`
echo $a

当然了,你还可以这么写:

#!/bin/bash
let a=10+5
echo $a

这两种方式都可以实现简单的数学运算。但相比这两种,我更推荐用下面这种形式:

(( a = 10 + 5 ))
echo $a

即将需要运算的内容放在两对中括号里面。因为这种方式更加简洁,并且功能也是最为完整,也是最为接近高级语言的写法。

文章首发于【陈树义的博客园】,点击跳转到原文:https://www.cnblogs.com/chanshuyi/p/quick_start_of_shell_09_arithmetic.html

posted @   陈树义  阅读(248)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示