当前位置:  技术问答>linux和unix

test比较字符串,为什么结果相反?

    来源: 互联网  发布时间:2017-01-21

    本文导语:  [root@localhost scripts]# str_a="abc" [root@localhost scripts]# str_b="def" [root@localhost scripts]# test "$str_a" = "$str_b" [root@localhost scripts]# echo $? 1 [root@localhost scripts]# str_b="abc" [root@localhost scripts]# test "$str_a" = "$str_b" [root@localhos...

[root@localhost scripts]# str_a="abc"
[root@localhost scripts]# str_b="def"
[root@localhost scripts]# test "$str_a" = "$str_b"
[root@localhost scripts]# echo $?
1
[root@localhost scripts]# str_b="abc"
[root@localhost scripts]# test "$str_a" = "$str_b"
[root@localhost scripts]# echo $?
0


晕哦,1不是true么,0是false。

|
0是true

|
0是返回值为真。 失败时不会始终返回 1(虽然这是通常返回的值),可能返回一个非零值。

|
不矛盾
你弄混了表达式的计算结果与命令的返回状态

$? 是上一个命令的返回状态
如果表达式返回真,那么test命令的返回状态就是0

|
shell 里只有0是正常的,其他都是错误.

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ Bitsets 成员 test():返回指定位的状态
  • 为什么是./test,而不是test?
  • Integer test(Integer i)=Int test(Int i) ??
  • public class Test 和 class Test 两种声明有什么区别
  • test test
  • 关于import test.*和import test.A的问题
  • 是否有系统函数将全路径文件名,格式化为文件名。如(/tmp/test.txt -> test.txt)
  • 我自己写了一个一个程序,文件名叫test。。怎么能够像调用系统命令那样子去调用我这个命令呢。在任何地方输入test就能执行这个程序。
  • 我用JDK中的javac命令编译一个test.java。系统提示不能打开test.java该文件!!!
  • [test@localhost scripts]$ [ -n "$HOME" ] [test@localhost scripts]$ echo $? 0
  • 菜鸟用tomcat3.2,在他的root目录下建立了一个test1.jsp.用浏览器显示正常,但我后来删掉了,可用浏览器还可以看到test1.jsp,这是怎么回事
  • 还是中文问题:url(/test/a/救救我.html),其中,test.jsp接受request参数并打印,weblogic6.0上运行,却总是乱码!
  • 写的TEST程序不能用
  • 在Linux操作系统下,g++编译的怪问题:g++ -o test test.c
  • echo $$的问题 ,echo $($test)这个不行
  • linux 修改新建用户密码:passwd test
  • test命令的一点疑问
  • Shell test 命令之疑问
  • Google Test Adapter
  • Linux测试项目 Linux Test Project
  • JavaScript测试框架 YUI Test


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3