当前位置: 技术问答>linux和unix
[test@localhost scripts]$ [ -n "$HOME" ] [test@localhost scripts]$ echo $? 0
来源: 互联网 发布时间:2016-10-26
本文导语: [test@localhost scripts]$ [ -n "$HOME" ] [test@localhost scripts]$ echo $? 0 ##这个0是[ -n "$HOME" ]的返回值吗? [test@localhost scripts]$ [ -n "$HOME" ] && echo "ture" ture | [test@localhost scripts]$ echo $? 0 ##这个...
[test@localhost scripts]$ [ -n "$HOME" ]
[test@localhost scripts]$ echo $?
0 ##这个0是[ -n "$HOME" ]的返回值吗?
[test@localhost scripts]$ [ -n "$HOME" ] && echo "ture"
ture
[test@localhost scripts]$ echo $?
0 ##这个0是[ -n "$HOME" ]的返回值吗?
[test@localhost scripts]$ [ -n "$HOME" ] && echo "ture"
ture
|
[test@localhost scripts]$ echo $?
0 ##这个0是[ -n "$HOME" ]的返回值吗?
----------------
可以说是返回值 最好把他理解为命令执行的返回状态
在shell里 如果是0 表示上个命令执行成功 如果非0 表示命令执行失败
[test@localhost scripts]$ [ -n "$HOME" ] && echo "ture"
ture
-----------------
这里不能以别的语言里的那种逻辑与来理解
在shell里
A && B && C A执行成功 才会执行B B执行成功才会执行C
A && B || C A执行成功 才会执行B A执行失败 则执行C
shell脚本里有好些地方是和别的语言里不一样的表达方式 千万不要把别的语言的经验移植过来
一个好的教程 是必须的 推荐《ABS》http://www.linuxsir.org/main/doc/abs/abs3.7cnhtm/index.html
0 ##这个0是[ -n "$HOME" ]的返回值吗?
----------------
可以说是返回值 最好把他理解为命令执行的返回状态
在shell里 如果是0 表示上个命令执行成功 如果非0 表示命令执行失败
[test@localhost scripts]$ [ -n "$HOME" ] && echo "ture"
ture
-----------------
这里不能以别的语言里的那种逻辑与来理解
在shell里
A && B && C A执行成功 才会执行B B执行成功才会执行C
A && B || C A执行成功 才会执行B A执行失败 则执行C
shell脚本里有好些地方是和别的语言里不一样的表达方式 千万不要把别的语言的经验移植过来
一个好的教程 是必须的 推荐《ABS》http://www.linuxsir.org/main/doc/abs/abs3.7cnhtm/index.html