QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 14467|回复: 11

shell编程如何实现加法运算?

[复制链接]
发表于 2005-7-20 15:43:53 | 显示全部楼层 |阅读模式
在C里有include <math.h>
可是shell没有啊
#!/bin/sh
X=3 Y=5
Z=$X+$Y
echo $Z
结果却成了:3+5
发表于 2005-7-20 17:07:46 | 显示全部楼层
Z=`expr $X + $Y`
回复

使用道具 举报

 楼主| 发表于 2005-7-20 17:15:37 | 显示全部楼层
还是不行啊
回复

使用道具 举报

发表于 2005-7-21 10:41:12 | 显示全部楼层
不可能.

note:
是字符`, 不是字符'
而且 $X + $Y 之间都要有空格.
回复

使用道具 举报

发表于 2005-7-22 01:26:51 | 显示全部楼层
[code:1]
echo $a+$b|bc[/code:1]
回复

使用道具 举报

发表于 2005-7-22 09:58:25 | 显示全部楼层
z=$[$x+$y]

这样也可以。
回复

使用道具 举报

发表于 2005-7-22 11:22:06 | 显示全部楼层
对于浮点运算,还是用bc或者awk方便,因为shell只能作整数运算
回复

使用道具 举报

发表于 2005-7-23 11:38:46 | 显示全部楼层
這是 bash 方法
[victor@localhost ~]$ declare -i x y z
[victor@localhost ~]$ x=3 ; y=5 ; z=$x+$y
[victor@localhost ~]$ echo $z
8
[victor@localhost ~]$
[victor@localhost ~]$ i=3;j=4;k=$((i+j))
[victor@localhost ~]$ echo $k
7
[victor@localhost ~]$
[victor@localhost ~]$ i=3;j=4;let "k=$i+$j"
[victor@localhost ~]$ echo $k
7
[victor@localhost ~]$
回复

使用道具 举报

发表于 2005-7-23 12:59:32 | 显示全部楼层
#!/bin/sh

X=3
Y=5
let Z=$X+$Y
echo $Z
结果:[lj@MagicLinux tunet]$ ./temp
8
回复

使用道具 举报

发表于 2005-7-23 14:45:21 | 显示全部楼层
x=3
y=5
z=$[x+y]
echo $z
8
回复

使用道具 举报

发表于 2005-7-25 07:59:53 | 显示全部楼层
在bash中可以這樣寫

echo $((3+2))
回复

使用道具 举报

发表于 2005-11-20 12:19:42 | 显示全部楼层
echo 命令只是在输出的文件追加要输出的信息。
expr 命令则是算术命令。
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-11-2 14:18 , Processed in 0.077490 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

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