在编写脚本的时候,经常会遇到带参数运行的时候,这个时候不仅要判断参数的内容,为了纠错,还要判断字符串是否为空,可以这么判断。
使用 -z “$STRING" 来判断,
脚本如下
#!/bin/sh
STRING=
if [ -z "$STRING" ]; then
echo "STRING is empty 1"
fi
if [ -n "$STRING" ]; then
echo "STRING is not empty1"
fi
STRING=
if [ -z $STRING ]; then
echo "STRING is empty2"
fi
if [ -n $STRING ]; then
echo "STRING is not empty2"
fi
执行。
root@fetmx6ull-s:~/6# sh str_is_null.sh
STRING is empty 1
STRING is empty2
STRING is not empty2
我们可以看到,不带双引号的判断是不正确。必须使用带双引号的 -z,-n。
本文介绍了在Shell脚本中如何正确判断字符串是否为空,通过使用`-z`和`-n`选项结合双引号来确保判断的准确性。示例代码展示了不带双引号判断的错误情况,强调了在进行字符串判断时必须使用带双引号的方式。
132

被折叠的 条评论
为什么被折叠?



