Linux | shell脚本value too great for base

  • 内容
  • 相关

今天在编写shell脚本的时候发现了这个问题:

08: value too great for base (error token is "08")

 

原因是:

tar_file_month=`date +%m`

rsync -auzq --exclude="2018_0[1-9]" --exclude="2018_1[0-2]" --exclude="2018_0[1-"$(($tar_file_month-1))"]" 

当月是8月,tar_file_month变成了08,下面执行  $(($tar_file_month-1))的时候,变成了08-1,而0x对于shell来说,会解析成8进制,08超过了8进制的表示范围,所以报错:shell value too great for base;

解决方法:

管理员设置 回复 可见隐藏内容

 您阅读这篇文章共花了:

上一篇:华为 | eNSP云设备无网卡

下一篇:信息安全 | 快速求解乘法逆元

本文标签:    

版权声明:本文依据CC-BY-NC-SA 3.0协议发布,若无特殊注明,本文皆为《fishyoung》原创,转载请保留文章出处。

本文链接:Linux | shell脚本value too great for base - http://www.fishyoung.com/post-241.html