if中的-n -z linux_Shell
==========1 混淆的-n -z=================
-n 表示这个变量或者字符串是否不为空。
-z 表示这个变量或者字符串为空
-z 表示这个变量或者字符串为空
上面这两句话中最重要的点是不通的
-n 关注的是判断的内容是否不为空 如果判断的内容不为空 则true 如果内容为空 则false
-z 关注的是判断的内容是否为空 如果判断的内容为空 则true 如果内容不为空 则false
====================2.如下代码========================
demo.sh
#/bin/bash
a="abc" if [ -z $a ] then echo "-z $a : string length is zero" else echo "-z $a : string length is not zero" fi
if [ -n $a ] then echo "-n $a : string length is not null" else echo "-n $a : string length is null" fi
执行demo.sh返回如下
-z abc : string length is not zero // -z判断为空为真,而a=abc 因此范围false -n abc : string length is not null // -n判断不为空为真,而a=abc 确实不为空
注意事项:在脚本demo.sh中if [ -z $a ]和if [ -n $a ]中的$a应该加上“”,以防止不必要的麻烦
============================附加内容===================================
a="abc" [ $a ] 就是判断a是不是不为空 不为空则为true
if [ $a ] then echo "$a : string is not empty" else echo "$a : string is empty" fi
返回结果
abc : string is not empty
======================收工=====================
作者:horizonli
出处:http://www.cnblogs.com/horizonli/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
如果您认为文章还不错或者有所收获,您可以通过扫描下方的二维码进行随性打赏(¥1/¥2/¥5)以及点击左下角的【好文要顶】按钮以示支持,或者扫描关注即将写作的公众号二维码,因为这几种方式都是支持我继续写作,分享的最大动力!公众号将记录工作生活,技术内容,个性观点等内容,欢迎您的关注
出处:http://www.cnblogs.com/horizonli/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
支付宝(alipay) 二维码打赏 |
微信(wechat) 二维码打赏 JUST LI(**波) |
微信公众号: 木子李的菜田 |