LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1267|回复: 3

[请教]bash中对数字赋值的问题

[复制链接]
发表于 2009-8-12 06:34:19 | 显示全部楼层 |阅读模式
因为在批处理是总会出现“08”这样的情况
如果是csh,似乎“@ a = 08“是没有问题的
直接得到a=8

但是bash中,0开头的数字默认为8进制
所以不能简单的用let赋值了
请问能不能取消对8进制的默认,或者别的什么办法把“08”作为“8”赋值给“a“?
发表于 2009-8-13 11:54:09 | 显示全部楼层
笨办法,预处理一下:
a=08
b=${a##0}
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-13 15:07:56 | 显示全部楼层
谢谢,我刚刚发现用expr语句或者$[10#$a]也能满足我的要求
回复 支持 反对

使用道具 举报

发表于 2009-8-14 00:44:53 | 显示全部楼层
a=08
b=`echo $a|bc`也可以 就是麻烦了点

Post by moondarkside;2015814
谢谢,我刚刚发现用expr语句或者$[10#$a]也能满足我的要求
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表