返回顶部
首页 > 资讯 > 精选 >如何用Shell实现数学运算自定义函数
  • 708
分享到

如何用Shell实现数学运算自定义函数

2023-06-09 18:06:22 708人浏览 八月长安
摘要

本篇内容介绍了“如何用shell实现数学运算自定义函数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!最近脚本中总是需要计算,每次都用awk会

本篇内容介绍了“如何用shell实现数学运算自定义函数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

最近脚本中总是需要计算,每次都用awk会比较麻烦,就把awk的加减乘除封装了下,每次调用直接source math.sh就可以了。
有些要点要指出,以免以后修改的时候忘记:   
1、对两个数字进行判断是否为数字,使用awk进行匹配
2、对两个参数进行循环校验(写两次校验显得笨拙),需要使用变量的引用${!para}。

代码如下:

#!/bin/bash
############################
#重写shell中基本数学运算+ - × /
#时间:2014-01-18
#邮箱:jianye_jia@163.com
#版本: version 1.0
#备注:目前只支持2位整数运算
############################
#####################
#function is_Digit()
#判断参数是否为数字
#支持浮点数
#只能传入一个参数
#是,返回1,否则返回0
######################
functionis_Digit()
{
ref=`echo$1 |  awk'{print($0~/^[+-]?[0-9]?*(\.[0-9]*)?$/)?"digit":"string"}'`
if[ "$ref"== "digit"];then
return0;
else
return1;
fi
}
###################
#function multiply()
#判断参数是否为数字
#并将两个参数相乘
#函数直接传入引用
#变量的变量的实现${!para}
#函数的返回值,不能像C一样return,
#需要打印输出,echo
###################
functionmul()
{
for(( i=1;i<3;i++ ))
do
pa="$i"
ifis_Digit ${!pa}
then
continue;
else
echo"$pa isn't a number";
return0;
fi
done
ref=`awk-vnum_a=$1 -vnum_b=$2 'BEGIN{printf "%d \n",num_a*num_b}'`;
echo$ref;
}
########################
#function div()
#检查参数,返回两个数字差
########################
functiondiv()
{
for(( i=1;i<3;i++ ))
do
pa="$i"
ifis_Digit ${!pa}
then
continue;
else
echo"$pa isn't a number";
return0;
fi
done
ref=`awk-vnum_a=$1 -vnum_b=$2 'BEGIN{printf "%d \n",num_a/num_b}'`;
echo$ref;
}
########################
#function add()
#检查参数,返回两个数字和
########################
functionadd()
{
for(( i=1;i<3;i++ ))
do
pa="$i"
ifis_Digit ${!pa}
then
continue;
else
echo"$pa isn't a number";
return0;
fi
done
ref=`awk-vnum_a=$1 -vnum_b=$2 'BEGIN{printf "%d \n",num_a+num_b}'`;
echo$ref;
}
########################
#function sub()
#检查参数,返回两个数字差
########################
functionsub()
{
for(( i=1;i<3;i++ ))
do
pa="$i"
ifis_Digit ${!pa}
then
continue;
else
echo"$pa isn't a number";
return0;
fi
done
ref=`awk-vnum_a=$1 -vnum_b=$2 'BEGIN{printf "%d \n",num_a-num_b}'`;
echo$ref;
}
###################
#function mul_f()
#判断参数是否为数字
#并将两个参数相乘
#函数直接传入引用
#变量的变量的实现${!para}
#函数的返回值,不能像C一样return,
#需要打印输出,echo
###################
functionmul_f()
{
for(( i=1;i<3;i++ ))
do
pa="$i"
ifis_Digit ${!pa}
then
continue;
else
echo"$pa isn't a number";
return0;
fi
done
ref=`awk-vnum_a=$1 -vnum_b=$2 'BEGIN{printf "%0.2f \n",num_a*num_b}'`;
echo$ref;
}
########################
#function div_f()
#检查参数,返回两个数字差
########################
functiondiv_f()
{
for(( i=1;i<3;i++ ))
do
pa="$i"
ifis_Digit ${!pa}
then
continue;
else
echo"$pa isn't a number";
return0;
fi
done
ref=`awk-vnum_a=$1 -vnum_b=$2 'BEGIN{printf "%0.2f \n",num_a/num_b}'`;
echo$ref;
}
########################
#function add_f()
#检查参数,返回两个数字和
########################
functionadd_f()
{
for(( i=1;i<3;i++ ))
do
pa="$i"
ifis_Digit ${!pa}
then
continue;
else
echo"$pa isn't a number";
return0;
fi
done
ref=`awk-vnum_a=$1 -vnum_b=$2 'BEGIN{printf "%0.2f \n",num_a+num_b}'`;
echo$ref;
}
########################
#function sub_f()
#检查参数,返回两个数字差
########################
functionsub_f()
{
for(( i=1;i<3;i++ ))
do
pa="$i"
ifis_Digit ${!pa}
then
continue;
else
echo"$pa isn't a number";
return0;
fi
done
ref=`awk-vnum_a=$1 -vnum_b=$2 'BEGIN{printf "%0.2f \n",num_a-num_b}'`;
echo$ref;
}

“如何用Shell实现数学运算自定义函数”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: 如何用Shell实现数学运算自定义函数

本文链接: https://lsjlt.com/news/257267.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何用Shell实现数学运算自定义函数
    本篇内容介绍了“如何用Shell实现数学运算自定义函数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!最近脚本中总是需要计算,每次都用awk会...
    99+
    2023-06-09
  • Shell实现的一些数学运算自定义函数分享
    最近脚本中总是需要计算,每次都用awk会比较麻烦,就把awk的加减乘除封装了下,每次调用直接source math.sh就可以了。 有些要点要指出,以免以后修改的时候忘记: 1、对两个数字进行判断是...
    99+
    2022-06-04
    自定义 函数 数学
  • linux中shell如何自定义函数
    小编给大家分享一下linux中shell如何自定义函数,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、定义shell函数(define function)语法:...
    99+
    2023-06-09
  • 如何在shell中自定义函数
    这篇文章给大家介绍如何在shell中自定义函数,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一,调用函数必须在定义函数的后,不然会报错的funfun (){ echo "aaaa...
    99+
    2023-06-09
  • 如何实现Linux Shell脚本数学运算
    本篇内容介绍了“如何实现Linux Shell脚本数学运算”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在任何一种编程语言中,算术运算都是必...
    99+
    2023-06-09
  • Shell(())如何实现对整数进行数学运算
    这篇文章主要介绍“Shell(())如何实现对整数进行数学运算”,在日常操作中,相信很多人在Shell(())如何实现对整数进行数学运算问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Shell(())如何实现...
    99+
    2023-06-09
  • 使用Shell怎么实现数学运算
    今天就跟大家聊聊有关使用Shell怎么实现数学运算,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在Linux Shell中进行数学运算,通常可以使用的运算符有:简单运算: let[]...
    99+
    2023-06-08
  • 自学MySQL自定义函数
    下面讲讲关于MySQL自定义函数,文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完MySQL自定义函数这篇文章你一定会有所受益。 1.自定义函数简介 自定义函数...
    99+
    2024-04-02
  • 自定义函数如何实现单词排序并运用于PostgreSQL
    小编给大家分享一下自定义函数如何实现单词排序并运用于PostgreSQL,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Python实现逻辑按照分隔符将字符串分割为...
    99+
    2023-06-14
  • Shell(())实现对整数进行数学运算
    双小括号 (( )) 是 Bash Shell 中专门用来进行整数运算的命令,它的效率很高,写法灵活,是企业运维中常用的运算命令。 注意:(( )) 只能进行整数运算,不能对小数(浮点数)或者字符串进行运算。后续讲到的 ...
    99+
    2022-06-04
    Shell(()) 整数运算 Shell(()) 整数
  • Shell $[]对整数进行数学运算实现
    和 (())、let 命令类似,$[] 也只能进行整数运算。 Shell $[] 的用法如下: $[表达式] $[] 会对表达式进行计算,并取得计算结果。如果表达式中包含了变量,那么你可以加$,也可以不加。 Shell...
    99+
    2023-01-12
    Shell$[]整数运算 Shell$[]
  • Shell$[]对整数进行数学运算实现
    和 (())、let 命令类似,$[] 也只能进行整数运算。 Shell $[] 的用法如下: $[表达式] $[] 会对表达式进行计算,并取得计算结果。如果表达式中包含了变量,那...
    99+
    2023-01-12
    Shell $[] 整数运算 Shell $[]
  • 如何在golang中自定义实现函数?
    在 go 中实现自定义函数,需要使用 func 关键字后跟函数名、参数列表和返回类型(可选)。通过调用函数名和提供适当参数即可调用自定义函数。自定义函数可用于各种任务,例如处理数据、格式...
    99+
    2024-04-28
    函数 golang iphone 格式化输出 标准库
  • shell中怎么自定义函数
    shell中怎么自定义函数,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、定义函数代码如下:function fname(){statements;}或代码如...
    99+
    2023-06-09
  • shell自定义函数及参数调用解析
    一、定义函数 function fname(){statements;} 或 fname(){statements;} 二、调用函数 只需要使用函数名,即可调用某个函数:$ fname ; #执行函数 ...
    99+
    2022-06-04
    自定义 函数 参数
  • JavaScript如何自定义函数
    这篇文章主要介绍“JavaScript如何自定义函数”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“JavaScript如何自定义函数”文章能帮助大家解决问题。JavaScript中的函数分为两种:系...
    99+
    2023-06-29
  • Python如何自定义函数
    小编给大家分享一下Python如何自定义函数,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!自定义函数import requestsfrom b...
    99+
    2023-06-27
  • hive3.0.0如何自定义函数
    这篇文章主要为大家展示了“hive3.0.0如何自定义函数”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“hive3.0.0如何自定义函数”这篇文章吧。示例代码package hello...
    99+
    2023-06-02
  • 如何自定义 PHP 函数?
    自定义 php 函数包括以下步骤:使用 function 关键字声明函数。指定函数名。定义参数(可选)。使用 return 语句返回数据(可选)。调用函数。 如何自定义 PHP 函数:...
    99+
    2024-04-10
    函数 php
  • python3学习之自定义函数
    静态参数:def  函数名(参数1,参数2=默认值):"""注释文档"""    print("测试")    return "abc"说明:参数可以有多个,并可以指定默认值;一定要写注释文档动态参数:def  函数名(*args):   ...
    99+
    2023-01-31
    自定义 函数
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作