zoukankan      html  css  js  c++  java
  • value too great for base (error token is "08")

    shell 中,经常有定时任务, 这时候shell脚本中一般会对时间进行一些判断,或者相关逻辑的操作

    这时候,如果你获取的小时或者分钟是08,09,如果要再对其进行运算符或者比较的话,就会报标题的错误。

    原因:

    shell 默认认为0开始是个八进制,而八进制不可能出现8,9,所以报错。

    解决方法:

    主动的显示指定10进制,例子(前人的,非常不错,直接引用)

    You can explicitly state the base of a number using base#number
    Code:
    if [ $((10#$item)) -eq 0 ] ; then
    That will have trouble if the number starts with a minus sign.
    The '-' needs to be in front of the base like -10#009 for -9.

    如果是个负数,需要在前面加”-“,如 -10#08

  • 相关阅读:
    窗口实训1
    课后练习----实现窗口的切换
    第五次实训作业继承
    课程总结
    999
    777777777777777777777
    7
    6
    5
    事件处理程序
  • 原文地址:https://www.cnblogs.com/chengyeliang/p/5264526.html
Copyright © 2011-2022 走看看