问答详情
源自:2-2 shell单分支if语句

"$user"==root 和 "$user" == root 结果不同,为什么?

"$user"==root 和 "$user" == root (一个==两端没空格,一个==两端有空格)结果不同,没空格的会输出语句,有空格的不输出语句,它俩有何区别?

提问者:吴余 2016-01-15 11:07

个回答

  • gao634209276
    2016-02-05 12:48:58

    一看弄错了,糗。。。不过user和test我都定义变量了。http://img.mukewang.com/56b429b30001798607380469.jpg

  • gao634209276
    2016-02-05 12:44:42

    字符串比较==的两边没有空格也可以,到时test命令也就是[ "$user==root ],这个中括号必须用空格和内容隔开。

    不知道你的全部代码是什么,反正我用你的代码去试验了,没有你说的情况。如图

    http://img.mukewang.com/56b42839000114e807310372.jpg

    Current user is root 是命令结果,两种方法都可以出结果

  • ebola11
    2016-01-16 15:43:19

    ==两边必须空格,我仔细观察老是输入,都是有空格,如果没空格,根本不执行这条语句。