比较两个数大小

怎甘沉沦 提交于 2019-11-29 13:27:40

题目要求

写一个shell脚本,比较两个数的大小,支持浮点数,两个数通过shell参数的形式提供。

参考答案

#!/bin/bash
#这个脚本用来比较两个数大小
#作者:猿课-阿铭 www.apelearn.com
#日期:2018-12-05

if [ $# -ne 2 ]
then
    echo "请提供两个参数."
    exit
fi

if_number()
{
    if echo $1|grep -q '^-'
    then
        nu=`echo $1|sed 's/^-//'`
    else
        nu=$1
    fi
    n=`echo $nu|sed 's/[0-9.]//g'`
    if [ -n "$n" ]
    then
        echo "$1不是合法数字."
        exit
    fi
    if echo $1|grep -q '^\.'
    then
        echo "$1不是合法数字."
        exit
    fi
}

if_number $1
if_number $2

n1=`echo "$1>$2"|bc`
if [ $n1 -eq 1 ]
then
    echo "$1 > $2"
else
    if [ "$1" == "$2" ]
    then
        echo "$1 = $2"
    else
        echo "$1 < $2"
    fi
fi

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!