我尝试了以下三个代码来检测空变量。
value is judged as empty by [[ -z ]] : value = ''
value is judged as empty by grep -E ^[[:blank:]]* : value = ''
结果如下,
{{1}}
为什么第二个不起作用?请告诉我。
答案 0 :(得分:3)
你的第二个是模式,而不是正则表达式。它仅匹配至少包含3个字符的字符串:^
,单个空白字符,零个或多个任意字符以及$
。要匹配表示零个或多个空白字符的正则表达式,请使用=~
运算符。
if [[ $value =~ ^[[:blank:]]*$ ]]; then