Linux shell编程,这个命令if [ "$pid" ]; then...。什么时候if条件判断为true和false呢?

2025-04-02 07:16:07
推荐回答(5个)
回答1:

只有当pid为空时,if条件才会为false。如果pid是程序获取的进程号,那么就是当进程存在时(pid不为空)为true,当进程不存在时(pid为空)为false。
1、pid=""
    if条件为false,如下面输出2:
    pid=""
    if [ "$pid" ]
    then
        echo "1"
    else
        echo "2"
    fi
2、pid=任何非空值
    if条件为true,如下面输出1:
    pid="0"
    if [ "$pid" ]
    then
        echo "1"
    else
        echo "2"
    fi
希望能够帮助到你,你的好评是我前进的动力,谢谢!

回答2:

$pid存在且不为0为true

回答3:

这个里面的[ ]是表示判断的,相当于关键字test ,比如 [ $a=0 ] ,就表示当a=0的时候

if [ $a=0 ];then
echo "a"
else
echo "b"
fi
比如这句就表示当a的值为0的时候就输出a, a是其它值为就输出b

回答4:

pid有值的时候为True

回答5:

判断该进程是否存在。