Was macht der Operator "= ~" in Shell-Skripten?

Es scheint, dass es eine Art Vergleichsoperator ist, aber was genau macht es z. den folgenden Code (entnommen aushttps://github.com/lvv/git-prompt/blob/master/git-prompt.sh#L154)?

    if [[ $LC_CTYPE =~ "UTF" && $TERM != "linux" ]];  then
            elipses_marker="…"
    else
            elipses_marker="..."
    fi

Ich versuche gerade zu machengit-prompt unter MinGW zu arbeiten, und die mit MinGW gelieferte Shell scheint diesen Operator nicht zu unterstützen:

conditional binary operator expected
syntax error near `=~'
`        if [[ $LC_CTYPE =~ "UTF" && $TERM != "linux" ]];  then'

In diesem speziellen Fall kann ich einfach den gesamten Block durch ersetzenelipses_marker="…" (wie ich weiß, unterstützt mein Endgerät Unicode), aber was genau ist das?=~ tut?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage