分页: 1 / 1

求助 比较运算符

发表于 : 2009-09-03 10:57
fy20041127
小弟今天学习比较运算符,编写的简单测试程序
#! /bin/bash
clear
let salary=3000
let newsalary=2000
test $salary -ne $newsalary
echo "$?"

可结果竟然是 0,这不是测试二者是否不相等的吗,明明不相等,应该是1阿。其他的比较运算符结果也都是相反的,不知道为什么
在线等高手!!!!! :em06

Re: 求助 比较运算符

发表于 : 2009-09-03 10:59
eexpress
let干嘛

[ xx -ne xx ] && xx

多看 man bash
少问

Re: 求助 比较运算符

发表于 : 2009-09-03 11:01
懒蜗牛Gentoo
shell里,0表示成功、真,1表示失败、假。和c里面相反。

Re: 求助 比较运算符

发表于 : 2009-09-03 11:20
fy20041127
谢谢3楼,想继续请教个问题,
#! /bin/bash
clear
let salary=3000
let newsalary=2000
test $salary && $newsalary
echo "$?"

上面这个程序返回
./6.1: line 5: 2000:找不到命令
127

请问这个是为什么?test不能测试逻辑运算符吗?谢谢

Re: 求助 比较运算符

发表于 : 2009-09-03 11:26
懒蜗牛Gentoo
test $salary && $newsalary??
不能这么用吧,这样就是
test 3000 && 2000
先运行test 3000 再运行2000,2000当然不是一个命令了。

Re: 求助 比较运算符

发表于 : 2009-09-03 11:31
fy20041127
#! /bin/bash
clear
a=100
if [$a -eq 100]
then
echo "aaa"
fi

还有上面的也是一样,提示第四行的100:找不到命令

那请问到底这个命令的区分是什么样的?难道要加括号吗?

Re: 求助 比较运算符

发表于 : 2009-09-03 13:56
t3swing
看下脚本教程吧,这个东西不能全靠问阿
[ ]两边都要加空格
和c不同的细节有很多