shell 判断变量是否为空
一句话判断
[ ! $a ] && echo "a is null"
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
或者
#!/bin/sh a= if [ ! -n "$a" ]; then echo "IS NULL" else echo "NOT NULL" fi
或者
#!/bin/sh a= if [ ! $a ]; then echo "IS NULL" else echo "NOT NULL" 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
或者
#!/bin/sh a= if test -z "$a" then echo "a is not set!" else echo "a is set !" fi
5. 使用""判断
#!/bin/sh dmin= if [ "$dmin" = "" ] then echo "dmin is not set!" else echo "dmin is set !" fi
或者
#!/bin/sh a= if [ "$a" = "" ]; then echo "a is not set!" else echo "a 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