tot*_*tti 1 variables bash increment
当我仅在变量值为08或09时显示变量后,才会显示变量
a=08; ((a++)); echo "$a"
产量
~$ a=08; ((a++)); echo "$a"
bash: ((: 08: value too great for base (error token is "08")
08
Run Code Online (Sandbox Code Playgroud)
怎么了 ??
我想要结果09(不是9.我知道9可以实现bc <<< "08+01")
当你给一个带零的数字加前缀时,shell认为它是一个八进制数,而八进制数字只从0到7.
您可能希望保留不带前导零的数字,因此它是正常的十进制数,并且仅在打印值时添加前导零.
a=8; ((a++)); printf "%02d\n" $a
Run Code Online (Sandbox Code Playgroud)