当前位置: 技术问答>linux和unix
linux test的一个问题
来源: 互联网 发布时间:2016-11-04
本文导语: test -z $filename && echo "you must input a filename" && exit 0 谁能帮我解释一下,这句话的意思 | 首先,linux下返回0表示成功,返回-1表示失败,这是linux下的调用约定。 第二,-z表示如果后面的字符串长度...
test -z $filename && echo "you must input a filename" && exit 0
谁能帮我解释一下,这句话的意思
谁能帮我解释一下,这句话的意思
|
首先,linux下返回0表示成功,返回-1表示失败,这是linux下的调用约定。
第二,-z表示如果后面的字符串长度为zero,就成功,否则失败。
&&表示与的关系,和c语言中的&&意义相同。
所以,上面的意思就是:
如果filename变量是空的,就输出"you must input a filename",然后退出程序。
第二,-z表示如果后面的字符串长度为zero,就成功,否则失败。
&&表示与的关系,和c语言中的&&意义相同。
所以,上面的意思就是:
如果filename变量是空的,就输出"you must input a filename",然后退出程序。
|
shell中,&&并不是与的意思,和||一样,是条件执行
cmd1 && cmd2 如果cmd1的退出状态为0,那么执行cmd2
cmd1 || cmd2 如果cmd1的退出状态非0,那么执行cmd2
cmd1 && cmd2 如果cmd1的退出状态为0,那么执行cmd2
cmd1 || cmd2 如果cmd1的退出状态非0,那么执行cmd2
|
ls 正解呀!学习啦!