łańcuch bash porównać do wielu poprawnych wartości

Mam następujący fragment bashscript:

function get_cms {
    echo "input cms name"
    read cms
    cms=${cms,,}
    if [ "$cms" != "wordpress" && "$cms" != "meganto" && "$cms" != "typo3" ]; then
        get_cms
    fi
}

Ale bez względu na to, co wprowadzę (poprawne i niepoprawne wartości), nigdy nie wywoła tej funkcji ponownie, ponieważ chcę zezwolić tylko na 1 z tych 3 wejść. Próbowałem tego z || z [var! = wartość] lub [var! = wartość1] lub [var! = wartość1], ale nic nie działa. Czy ktoś może wskazać mi właściwy kierunek?

questionAnswers(4)

yourAnswerToTheQuestion