Shell 编程问题

Shell 编程问题

我编了一个Shell小程序,但是在用到if语句的时候怎么也搞不对。
我用的是red hat 7.1 ,if 语句中的测试语句如下:
#!/bin/bash
read w
if [ "$w"="wtb" ]
then
  echo "wtb"
else
  echo "ll"
fi
不管我输入什么他都是显示wtb,也就是说根本就没执行到else语句,我试了其它的测试也是如此,。不知何故.      
[QUOTE]最初由 wtb 发布
[B]我编了一个Shell小程序,但是在用到if语句的时候怎么也搞不对。
我用的是red hat 7.1 ,if 语句中的测试语句如下:
#!/bin/bash
read w
if [ "$w"="wtb" ]
then
  echo "wtb"
else
  echo "ll"
fi
不管我输入什么他都是显示wtb,也就是说根本就没执行到else语句,我试了其它的测试也是如此,。不知何故. [/B][/QUOTE]

if [ "$w" = "wtb" ]
=两边要空格      
我两边都空了呀,我按照书上的做也不行。
例如:
read wtb
if [ $wtb="wtb" ]
then
.....
fi
不管你输入什么它都运行then里面的语句。      
=======================================
试试

if [  "$W"  =  "wtb" ]

不要用

if  [  "$W"="wtb" ]

等号两边应该有空格,没有空格认为是一个字串,这个字串不是空的
永远为真 当然就只能执行到 then语句了。      
[QUOTE]最初由 风雪狂客 发布
[B]=======================================
试试

if [  "$W"  =  "wtb" ]

不要用

if  [  "$W"="wtb" ]

等号两边应该有空格,没有空格认为是一个字串,这个字串不是空的
永远为真 当然就只能执行到 then语句了。 [/B][/QUOTE]
----------------------------------------------------
请问在linux编程和在windows里边有什么不同吗?