课程
/运维&测试
/Linux
/shell编程之条件判断与流程控制
"$user"==root 和 "$user" == root (一个==两端没空格,一个==两端有空格)结果不同,没空格的会输出语句,有空格的不输出语句,它俩有何区别?
2016-01-15
源自:shell编程之条件判断与流程控制 2-2
正在回答
一看弄错了,糗。。。不过user和test我都定义变量了。
字符串比较==的两边没有空格也可以,到时test命令也就是[ "$user==root ],这个中括号必须用空格和内容隔开。
不知道你的全部代码是什么,反正我用你的代码去试验了,没有你说的情况。如图
Current user is root 是命令结果,两种方法都可以出结果
==两边必须空格,我仔细观察老是输入,都是有空格,如果没空格,根本不执行这条语句。
举报
Linux shell实用案例学习,一定会使你Linux运维能力再次提高
1 回答如果 env | grep "USER" 返回了多个结果的话怎么办?
2 回答[ -e /root/install(是一个不存在的文件) ] | echo $? 为什么输出0
1 回答shell脚本执行,所在目录不同,为什么执行结果不同?
3 回答请教:关于 判断root权限后如何自动切换root用户问题
1 回答批量添加user问题