shell中比较两个数的大小时,当数字太大会变成科学计数法显示,如何解决?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

shell中比较两个数的大小时,当数字太大会变成科学计数法显示,如何解决?

a123456678 2016-06-22 14:18:53 2087

会报错:
syntax error: invalid arithmetic operator
原因好像是数字显示成科学计数法了,if判断数把他当做字符串处理了。

shell显示 大小的显示 显示字数 shell如何解决 科学计数法显示
分享到
取消 提交回答
全部回答(1)
  • a123456678
    2019-07-17 19:45:30

    a=1234567890123456789012345678901234567890123456789012345678901
    b=1234567890123456789012345678901234567890123456789012345678902

    function lower_than() {
        python -c "import sys; sys.exit(0) if $1 < $2 else sys.exit(1)"
    }
    
    function great_than() {
        python -c "import sys; sys.exit(0) if $1 > $2 else sys.exit(1)"
    }
    
    lower_than $a $b && echo "$a < $b"
    great_than $a $b && echo "$a > $b"
    0 0
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

相似问题
最新问题
推荐课程