前提:查询weblogic进程是否存在(假设只存在一个weblogic)A=`ps -ef|grep weblogic|grep -v grep|awk '{print $2}'`[ -n $A ]echo $?[ -z $A ]echo $?问题:当weblogic进程存在时,分别返回0和1,但是当进程不存在时分别返回0和0,因为-n是判断非空串,当进程不存在时返回A为空,那么此时[ -n $A ]执行结果为什么仍是0而不是1呢?求解!!!
你把$A用引号引起来试试. 如下