負の数、またはbashの関数であれば? [閉鎖]

負の数、またはbashの関数であれば? [閉鎖]

私は現在、文字列が変数に存在することを確認しています。

check_string() {
    if [[ ! "$FILES" =~ "abcd" ]] || [[ ! "$FILES" =~ "xyz" ]];
    then
        return 0
    else
        return 1
    fi
}
check_string

問題は、2番目の条件[[ ! "$FILES" =~ "xyz" ]]が評価されないことです。

ただし、これを否定しないと、2番目の条件が評価されます[[ "$FILES" =~ "xyz" ]]

check_string() {
    if [[ "$FILES" =~ "abcd" ]] || [[ "$FILES" =~ "xyz" ]];
    then
        return 0
    else
        return 1
    fi
}
check_string

どんなアイデアがありますか?

ベストアンサー1

最初の条件が常に true の場合、2 番目の条件は評価されません。

言及されていない内容ですが、「abcd」と全く似ていないよう$FILESです$FILESので、否定は常に真です。

おすすめ記事