Hi,

I trying to test two condition together (AND) under bash but it’s not working…

The goal is ti have True when two variables are either not set or empty (empty string)

I’ve tried

if [[ -n VARIABLE1 && -n VARIABLE2 ]]; then
    echo "OK"
fi

Here I get the “OK” no matter what .

Thanks.

  • thingsiplay@beehaw.org
    link
    fedilink
    arrow-up
    1
    ·
    17 hours ago

    Try this:

    #!/usr/bin/env bash
    
    a=""
    if [[ -z "${a}" && -z "${b}" ]]; then
        echo "OK"
    else
        echo "Not OK"
    fi
    
    a="OK"
    if [[ -n "${a}" && -z "${b}" ]]; then
        echo "More ${a}"
    else
        echo "More Unokay"
    fi