LinuxSir.cn,穿越时空的Linuxsir!

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

expr,基本的表达式运算为什么在我的机器上无法计算啊,郁闷死,在线等待,哪位大哥给看

[复制链接]
发表于 2008-7-31 17:00:39 | 显示全部楼层 |阅读模式
请看:
[root@xinchen ~]# A=35
[root@xinchen ~]# B=5
[root@xinchen ~]# C='expr $A + $B'
[root@xinchen ~]# echo $C
expr $A + $B

谁能告诉我这是怎么回事?????

机器OS version:
[root@xinchen ~]# uname -a
Linux xinchen.love.cn 2.6.9-5.EL #1 Wed Jan 5 19:22:18 EST 2005 i686 i686 i386 GNU/Linux
发表于 2008-7-31 17:59:42 | 显示全部楼层
C=$(expr $A + $B)



C=`expr $A + $B`
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-7-31 20:22:13 | 显示全部楼层
C=$(expr $A + $B):这条语句在我电脑上可以运行.

C=`expr $A + $B`:这条就不行,真是奇怪.

请看下面:
[root@xinchen Desktop]# A=20
[root@xinchen Desktop]# B=30
[root@xinchen Desktop]# C=$(expr $A + $B)
[root@xinchen Desktop]# echo $C
50
[root@xinchen Desktop]# C='expr $A + $B'
[root@xinchen Desktop]# echo $C
expr $A + $B
谁能告诉我这是为什么啊!书上用这种形式的很多(C='expr $A + $B'),为什么在我机器上就不行了呢?
回复 支持 反对

使用道具 举报

发表于 2008-7-31 21:14:21 | 显示全部楼层
你没觉得 ` 和 ' 这两个符号是不同的吗?那么换个字体和字号给你看看

正确的:C=`expr $A + $B`
而你的:C='expr $A + $B'


正确的应该是你键盘上的,ESC正下方的、1正左方的、Tab正上方的那个“`”,谢谢。

基本上,你这个问题和expr一点关系都没有。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-7-31 21:55:17 | 显示全部楼层
楼上的哥们说的太对了,终于明白了,
原来错误出现在这里了.
细节决定成败啊!
谢了!
回复 支持 反对

使用道具 举报

发表于 2008-8-6 00:51:55 | 显示全部楼层
Post by Jockey;1880939
你没觉得 ` 和 ' 这两个符号是不同的吗?那么换个字体和字号给你看看

正确的:C=`expr $A + $B`
而你的:C='expr $A + $B'


正确的应该是你键盘上的,ESC正下方的、1正左方的、Tab正上方的那个“`”,谢谢。

基本上,你这个问题和expr一点关系都没有。


您真细心 赞一个
回复 支持 反对

使用道具 举报

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

本版积分规则

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