Кажется, что это своего рода оператор сравнения, но что именно он делает, например. следующий код (взято из https://github.com/lvv/git-prompt/blob/master/git-prompt.sh#L154)?
if [[ $LC_CTYPE =~ "UTF" && $TERM != "linux" ]]; then
elipses_marker="…"
else
elipses_marker="..."
fi
В настоящее время я пытаюсь заставить git-prompt
работать с MinGW, и оболочка, поставляемая с MinGW, похоже, не поддерживает этот оператор:
conditional binary operator expected
syntax error near `=~'
` if [[ $LC_CTYPE =~ "UTF" && $TERM != "linux" ]]; then'
В этом конкретном случае я могу просто заменить весь блок с elipses_marker="…"
(насколько я знаю, мой терминал поддерживает юникод), но что именно делает этот =~
?