首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

shell判空true false的一个坑

前言 在写shell的时候发现一个违反直觉的的操作,一般判断一个变量是否为boolean,习惯上使用if param。 但是在写脚本的时候,发现无论如何,不会走false。...反例 在很多编程语言中,可以直接使用 if boolean,来判断这个变量是否为true。但是在shell当中直觉上是可以,但实际上是不能。...aaa=false if [[ $aaa ]];then echo "is true" else echo "is false" fi 结是为is true,是不是违反直觉。...shell 是怎么执行这一段脚本的: sh -x test.sh 结果: + aaa=false + [[ -n false ]] + echo 'is true' is true 可以看到,如果是一个变量...aaa是有值的,而且在shell里,false 并不代表false。真正代表truefalse的是0和1,没想到吧。

23220
领券