Shell整数和小数运算

目录

一.整数运算

方法一:expr

[方法二 :(())](#方法二 :(()))

[方法三:\[\]](#方法三:[])

[方法四 :let](#方法四 :let)

二.小数运算


一.整数运算

方法一:expr

bash 复制代码
#数学运算:
expr 5 + 3    # 输出结果为8
expr 10 - 4   # 输出结果为6
expr 2 * 6    # 输出结果为12
expr 15 / 3   # 输出结果为5
#逻辑运算:
expr 5 \> 3    # 输出结果为1,表示5大于3
expr 2 \<= 1   # 输出结果为0,表示2不小于等于1
expr 7 == 7    # 输出结果为1,表示7等于7
expr 9 != 8    # 输出结果为1,表示9不等于8
#字符串处理
expr length "Hello, World!"        # 输出结果为13,表示字符串的长度为13
expr substr "Hello, World!" 7 5    # 输出结果为"World",表示从第7个字符开始提取长度为5的子串
expr match "abcdefg" "a.*f"        # 输出结果为7,表示匹配成功,并且匹配到的子串长度为7

方法二 :$(())

bash 复制代码
echo $((10 - 4))   # 输出结果为6
echo $((2 * 6))    # 输出结果为12
echo $((7 % 3))    # 输出结果为1,表示7除以3的余数为1
echo $((2 ** 3))   # 输出结果为8,表示2的3次方等于8

方法三:$[]

bash 复制代码
echo $[5+2]       #输出结果为 7
echo $[5**2]      #输出结果为 25,即 5 的平方

方法四 :let

bash 复制代码
#!/bin/bash

let a=5+3
echo "a = $a" # 输出 a = 8

let b=10-2
let c=b*3
echo "c = $c" # 输出 c = 24

let d=15/3
let e=d%2
echo "e = $e" # 输出 e = 1

二.小数运算

在 Shell 脚本中,执行小数运算通常需要使用 bc 命令,它是一个用于数学计算的命令行工具,支持小数运算。

bash 复制代码
#!/bin/bash

# 设置精度为小数点后两位
scale=2

# 定义两个小数变量
a=3.14
b=2.73

# 使用 bc 进行加法运算
sum=$(echo "$a + $b" | bc)
echo "Sum: $sum" # 输出 Sum: 5.87

# 使用 bc 进行减法运算
difference=$(echo "$a - $b" | bc)
echo "Difference: $difference" # 输出 Difference: 0.41

# 使用 bc 进行乘法运算
product=$(echo "$a * $b" | bc)
echo "Product: $product" # 输出 Product: 8.57

# 使用 bc 进行除法运算
quotient=$(echo "scale=4; $a / $b" | bc)
echo "Quotient: $quotient" # 输出 Quotient: 1.1500
相关推荐
gywl38 分钟前
openEuler VM虚拟机操作(期末考试)
linux·服务器·网络·windows·http·centos
日记跟新中2 小时前
Ubuntu20.04 修改root密码
linux·运维·服务器
码农君莫笑2 小时前
信管通低代码信息管理系统应用平台
linux·数据库·windows·低代码·c#·.net·visual studio
BUG 4042 小时前
Linux——Shell
linux·运维·服务器
大霞上仙3 小时前
Linux 多命令执行
linux·运维·服务器
晨欣3 小时前
Kibana:LINUX_X86_64 和 DEB_X86_64两种可选下载方式的区别
linux·运维·服务器
AI青年志3 小时前
【服务器】linux服务器管理员查看用户使用内存情况
linux·运维·服务器
dessler4 小时前
Docker-run命令详细讲解
linux·运维·后端·docker
PyAIGCMaster4 小时前
ubuntu装P104驱动
linux·运维·ubuntu
奈何不吃鱼4 小时前
【Linux】ubuntu依赖安装的各种问题汇总
linux·运维·服务器