use*_*604 3 string bash shell is-empty
我想检查变量是否为null.
我的代码是:
list_Data="2018-01-15 10:00:00.000|zQfrkkiabiPZ||04|
2018-01-15 10:00:00.000|zQgKLANvbRWg||04|
2018-01-15 10:00:00.000|zQgTEbJjWGjf||01|
2018-01-15 10:00:00.000|zQgwF1YJLnAT||01|"
echo "list_Data"
if [[ -z "list_Data" ]]
then
echo "not Empty"
else
echo "empty"
fi
Run Code Online (Sandbox Code Playgroud)
输出是:
2018-01-15 10:00:00.000|zQfrkkiabiPZ||04|
2018-01-15 10:00:00.000|zQgKLANvbRWg||04|
2018-01-15 10:00:00.000|zQgTEbJjWGjf||01|
2018-01-15 10:00:00.000|zQgwF1YJLnAT||01|
empty
Run Code Online (Sandbox Code Playgroud)
变量包含值但我总是空消息的问题请帮忙.
小智 10
您可以在 Bash shell 中使用以下任何一项来确定变量是否具有 NULL 值
my_var="DragonBallz"
if [ -z "$my_var" ]
then
echo "\$my_var is NULL"
else
echo "\$my_var is NOT NULL"
fi
Run Code Online (Sandbox Code Playgroud)
(或者)
my_var=""
if test -z "$my_var"
then
echo "\$my_var is NULL"
else
echo "\$my_var is NOT NULL"
fi
Run Code Online (Sandbox Code Playgroud)
(或者)
[ -z "$my_var" ] && echo "NULL"
[ -z "$my_var" ] && echo "NULL" || echo "Not NULL"
Run Code Online (Sandbox Code Playgroud)
(或者)
[[ -z "$my_var" ]] && echo "NULL"
[[ -z "$my_var" ]] && echo "NULL" || echo "Not NULL"
Run Code Online (Sandbox Code Playgroud)
(或者)
var="$1"
if [ ! -n "$var" ]
then
echo "$0 - Error \$var not set or NULL"
else
echo "\$var set and now starting $0 shell script..."
fi
Run Code Online (Sandbox Code Playgroud)
if [[ -z "$list_Data" ]]
then
echo "Empty"
else
echo "Not empty"
fi
Run Code Online (Sandbox Code Playgroud)
像这样试试。(添加$和切换案例。)
我没想到这个解决方案,当上述所有解决方案对我来说都失败时,这个解决方案对我有用
if [[ "$is_always_execute" == null ]];
then
is_always_execute=false;
fi
Run Code Online (Sandbox Code Playgroud)
尝试以下,你应该从改变-z到-n如下,并添加$到您的变量太多.
if [[ -n "$list_Data" ]]
then
echo "not Empty"
else
echo "empty"
fi
Run Code Online (Sandbox Code Playgroud)
说明:从man test页面如下(它检查变量是否具有任何值.如果它有任何值,则条件为TRUE,否则为FALSE.)
Run Code Online (Sandbox Code Playgroud)-n STRING the length of STRING is nonzero
| 归档时间: |
|
| 查看次数: |
3733 次 |
| 最近记录: |