【嵌入式开发 Linux 常用命令系列 7.3 -- linux 命令行数值计算】

发布时间:2023年12月29日

linux 命令行数值计算

在 Linux 命令行中,您可以使用多种方法来执行基本的数学运算。以下是一些示例:

使用 awk

awk 是一个强大的文本处理工具,也可以用来执行数学运算。

# 加法 
awk 'BEGIN {print 5 + 3}' 

# 减法 
awk 'BEGIN {print 5 - 3}' 

# 乘法 
awk 'BEGIN {print 5 * 3}' 

# 除法 
awk 'BEGIN {print 10 / 3}' 

# 取模 
awk 'BEGIN {print 10 % 3}' 

使用 bc 命令

bc 是一个用于数学运算的语言和工具,它支持浮点数运算和更高级的数学函数。

# 加法 
echo "5 + 3" | bc 

# 减法 
echo "5 - 3" | bc 

# 乘法 
echo "5 * 3" | bc 

# 除法(获取浮点数结果) 
echo "scale=2; 10 / 3" | bc 

# 幂运算 
echo "4 ^ 2" | bc 

在这里,scale=2 设置了输出小数点后的精度为两位。

使用 Bash 的内置算术扩展

你可以使用 $((表达式)) 语法来执行数学运算。

# 加法 
echo $((5 + 3)) 

# 减法 
echo $((5 - 3)) 

# 乘法 
echo $((5 * 3)) 

# 除法 
echo $((10 / 2)) 

# 取模 
echo $((10 % 3)) 

使用 expr

expr 命令用于执行整数运算。注意,某些符号(比如星号 *)需要转义。

# 加法 
expr 5 + 3 

# 减法 
expr 5 - 3 

# 乘法(注意星号需要转义) 
expr 5 \* 3 

# 除法 
expr 10 / 2 

# 取模 
expr 10 % 3 

脚本命令实现

#!/bin/bash

value=$2

case $1 in
        B)
                echo "scale=2; $value Bytes" | bc
                ;;
        K)
                echo "`echo "scale=2; $value / 1024" | bc` K"
                ;;
        M)
                echo "`echo "scale=2; $value / 1024 / 1024" | bc` M"
                ;;
        G)
                echo "`echo "scale=2; $value / 1024 / 1024 / 1024" | bc` G"
                ;;
        *)
                echo "scale=2; $1" | bc
                #return 0
                #exit 2
                ;;
esac

效果如下
在这里插入图片描述

通过使用上述不同的方法,你可以在 Linux 命令行中轻松地进行基本的数学计算。对于更复杂的数学问题,bcawk 提供了丰富的功能来处理更高级的运算和数据处理任务。

文章来源:https://blog.csdn.net/sinat_32960911/article/details/135283924
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。