Bash中的空字符串比较

洛根

我没有为$ pass_tc11设置任何值。因此它在回显时返回null。如何在if子句中进行比较

这是我的代码。我不希望打印“嗨” ...

-bash-3.00$ echo $pass_tc11

-bash-3.00$ if [ "pass_tc11" != "" ]; then
> echo "hi"
> fi
hi
-bash-3.00$
fedorqui'停止伤害'

首先,请注意您没有正确使用变量:

if [ "pass_tc11" != "" ]; then
#     ^
#     missing $

无论如何,要检查变量是否为空,可以使用-z->字符串为空:

if [ ! -z "$pass_tc11" ]; then
   echo "hi, I am not empty"
fi

-n->长度不为零:

if [ -n "$pass_tc11" ]; then
   echo "hi, I am not empty"
fi

来自man test

-z STRING

STRING的长度为零

-n STRING

STRING的长度不为零

样品:

$ [ ! -z "$var" ] && echo "yes"
$

$ var=""
$ [ ! -z "$var" ] && echo "yes"
$

$ var="a"
$ [ ! -z "$var" ] && echo "yes"
yes

$ var="a"
$ [ -n "$var" ] && echo "yes"
yes

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Bash空字符串比较行为

来自分类Dev

空字符串比较中的异常

来自分类Dev

哪个`[`不能比较空字符串?

来自分类Dev

无法比较空字符串

来自分类Dev

哪个`[`不能比较空字符串?

来自分类Dev

bash中的字符串比较

来自分类Dev

bash中的字符串比较失败

来自分类Dev

比较bash中的字符串

来自分类Dev

Bash中的多字符串比较

来自分类Dev

如何在Robot Framework中搜索空字符串/比较两个字符串

来自分类Dev

忽略mapconcat中的空字符串?

来自分类Dev

python中的空字符串?

来自分类Dev

在Java中检查空字符串

来自分类Dev

python中的空字符串?

来自分类Dev

Ansible 响应中的空字符串

来自分类Dev

删除字符串数组中的空字符串

来自分类Dev

在字符串检测中处理空字符串

来自分类Dev

字符串数组中的空字符串

来自分类Dev

CMake比较带有STREQUAL的空字符串失败

来自分类Dev

比较可以为空和空字符串(“”)的对象

来自分类Dev

CMake比较带有STREQUAL的空字符串失败

来自分类Dev

在mysql中将NULL值与空字符串进行比较

来自分类Dev

管道在git的bash中以bash返回空字符串

来自分类Dev

管道在git的bash中以bash返回空字符串

来自分类Dev

比较命令结果与bash中的字符串

来自分类Dev

比较bash变量中的多行字符串

来自分类Dev

bash脚本中的字符串比较问题

来自分类Dev

比较bash中的多个选项(字符串)

来自分类Dev

比较命令结果与bash中的字符串