我想以最少的努力将带有前导零的数字视为小数,因此我打算使用以下语法:
x=08
y=$(( 10#$x - 1 ))
以下语法适用于克什88?
答案1
看起来是这样:
$ command -v ksh
/usr/bin/ksh
$ what /usr/bin/ksh
/usr/bin/ksh:
Version M-11/16/88i
SunOS 5.8 Generic 110662-24 Apr 2007
$ ksh
$ x=08
$ y=$(( 10#$x - 1 ))
$ echo "$x - $y"
08 - 7
来自“算术评估”部分手册页:
常量的形式为 [根据#]n在哪里 根据 是 2 到 36 之间的十进制数,表示算术基数,n是该基数中的一个数字。如果根据省略则使用基数 10。