shell脚本怎么判断变量或参数是否为空?

发布时间:2020-07-10编辑:脚本学堂
有关shell脚本中判断输入变量或参数是否为空的五种方法,在shell脚本中对变量是否为空值的检测很重要,这里举了五个例子,供大家学习参考。

shell/ target=_blank class=infotextkey>shell脚本判断输入变量或参数是否为空

例1,判断变量
 

read -p "input a word :" word
if  [ ! -n "$word" ] ;then
    echo "you have not input a word!"
else
    echo "the word you input is $word"
fi

例2,判断输入参数
 

#!/bin/bash
if [ ! -n "$1" ] ;then
    echo "you have not input a word!"
else
    echo "the word you input is $1"
fi

以下方法未验证,大家做下测试。

例3,直接通过变量判断
得到的结果为: IS NULL
 

#!/bin/sh
para1=
if [ ! $para1 ]; then
  echo "IS NULL"
else
  echo "NOT NULL"
fi

例4,使用test判断
得到结果: dmin is not set!
 

#!/bin/sh
dmin=
if test -z "$dmin"
then
  echo "dmin is not set!"
else 
  echo "dmin is set !"
fi

例5,使用""判断
 

#!/bin/sh
dmin=
if [ "$dmin" = "" ]
then
  echo "dmin is not set!"
else 
  echo "dmin is set !"
fi

完整示例,以下脚本用在系统启动时:
 

#!/bin/bash
echo "Input Param Is [$1]"
if [ ! -n "$1" ] ;then
 echo "you have not input a null word!"
 ./app1;./app12;./app123
elif [ $1 -eq 2 ];then
 ./app12;./app123
elif [ $1 -eq 90 ];then
 echo "yy";
fi