【linux】 shell 之 字符串 -z, -n 判断

-n : 字符串长度不等于 0 为真 ,助记符 no zero, example :


VAR1=1;VAR2="" ;[ -n "$VAR1" ];echo $?0  true
VAR1=1;VAR2="" ;[ -n "$VAR2" ];echo $?1 false .

-z : 字符串长度等于 0 为真 ,助记符zero , example :

VAR1=1;VAR2="";[ -z "$VAR1" ] ;echo $?1
VAR1=1;VAR2="";[ -z "$VAR2" ] ;echo $?0 true .

需要注意的是,在[]中,使用-z 或-n 判断字符串长度时,变量要加双引号

举例说明:


# [ -z $a ] && echo yes || echo no

yes

# [ -n $a ] && echo yes || echo no

yes


加了双引号才能正常判断是否为空:



# [ -z "$a" ] && echo yes || echo no

yes

# [ -n "$a" ] && echo yes || echo no

no



使用了双中括号就不用了双引号



# [[ -n $a ]] && echo yes || echo no

no

# [[ -z $a ]] && echo yes || echo no

yes

相关推荐

  1. 【linux】 shell 字符串 -z, -n 判断

    2024-01-13 09:12:04       41 阅读
  2. QtQChar类的字符判断

    2024-01-13 09:12:04       28 阅读
  3. lua 判断字符串是否包含指定字符

    2024-01-13 09:12:04       22 阅读
  4. 判断是否是json字符串

    2024-01-13 09:12:04       43 阅读
  5. sql判断字符串是否存在

    2024-01-13 09:12:04       32 阅读
  6. 判断字符串是否存在

    2024-01-13 09:12:04       14 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-13 09:12:04       7 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-13 09:12:04       8 阅读
  3. 在Django里面运行非项目文件

    2024-01-13 09:12:04       7 阅读
  4. Python语言-面向对象

    2024-01-13 09:12:04       10 阅读

热门阅读

  1. windows系统Mysql备份脚本

    2024-01-13 09:12:04       47 阅读
  2. c++简单做一个文件变长储存(自己封装字符串类)

    2024-01-13 09:12:04       37 阅读
  3. TCP/IP Illustrated Episode 23

    2024-01-13 09:12:04       37 阅读
  4. 【FastDDS源码剖析】定时器

    2024-01-13 09:12:04       31 阅读
  5. 若依微服务中的上传文件的前后端实现

    2024-01-13 09:12:04       35 阅读